package org.xtext.example.cr.ui.contentassist.antlr.internal; 

import java.io.InputStream;
import org.eclipse.xtext.*;
import org.eclipse.xtext.parser.*;
import org.eclipse.xtext.parser.impl.*;
import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.xtext.parser.antlr.XtextTokenStream;
import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens;
import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser;
import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.DFA;
import org.xtext.example.cr.services.CRGrammarAccess;



import org.antlr.runtime.*;
import java.util.Stack;
import java.util.List;
import java.util.ArrayList;

@SuppressWarnings("all")
public class InternalCRParser extends AbstractInternalContentAssistParser {
    public static final String[] tokenNames = new String[] {
        "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_INT", "RULE_ID", "RULE_STRING", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'Int'", "'Real'", "'Partition'", "','", "'('", "')'", "'='", "'.'", "'file'", "':'", "'{'", "'}'", "'['", "']'", "'array'", "'size'", "'add'", "'delete'", "'print'", "'for'", "'forall'", "'calcCR'", "'calcMean'", "'highestCR'", "'findSimilar'", "'clu'", "'/'", "':/'"
    };
    public static final int RULE_ID=5;
    public static final int T__29=29;
    public static final int T__28=28;
    public static final int T__27=27;
    public static final int T__26=26;
    public static final int T__25=25;
    public static final int T__24=24;
    public static final int T__23=23;
    public static final int T__22=22;
    public static final int RULE_ANY_OTHER=10;
    public static final int T__21=21;
    public static final int T__20=20;
    public static final int RULE_SL_COMMENT=8;
    public static final int EOF=-1;
    public static final int RULE_ML_COMMENT=7;
    public static final int T__30=30;
    public static final int T__19=19;
    public static final int T__31=31;
    public static final int RULE_STRING=6;
    public static final int T__32=32;
    public static final int T__33=33;
    public static final int T__16=16;
    public static final int T__34=34;
    public static final int T__15=15;
    public static final int T__35=35;
    public static final int T__18=18;
    public static final int T__36=36;
    public static final int T__17=17;
    public static final int T__37=37;
    public static final int T__12=12;
    public static final int T__38=38;
    public static final int T__11=11;
    public static final int T__14=14;
    public static final int T__13=13;
    public static final int RULE_INT=4;
    public static final int RULE_WS=9;

    // delegates
    // delegators


        public InternalCRParser(TokenStream input) {
            this(input, new RecognizerSharedState());
        }
        public InternalCRParser(TokenStream input, RecognizerSharedState state) {
            super(input, state);
             
        }
        

    public String[] getTokenNames() { return InternalCRParser.tokenNames; }
    public String getGrammarFileName() { return "../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g"; }


     
     	private CRGrammarAccess grammarAccess;
     	
        public void setGrammarAccess(CRGrammarAccess grammarAccess) {
        	this.grammarAccess = grammarAccess;
        }
        
        @Override
        protected Grammar getGrammar() {
        	return grammarAccess.getGrammar();
        }
        
        @Override
        protected String getValueForTokenName(String tokenName) {
        	return tokenName;
        }




    // $ANTLR start "entryRuleCRLanguage"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:60:1: entryRuleCRLanguage : ruleCRLanguage EOF ;
    public final void entryRuleCRLanguage() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:61:1: ( ruleCRLanguage EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:62:1: ruleCRLanguage EOF
            {
             before(grammarAccess.getCRLanguageRule()); 
            pushFollow(FOLLOW_ruleCRLanguage_in_entryRuleCRLanguage61);
            ruleCRLanguage();

            state._fsp--;

             after(grammarAccess.getCRLanguageRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleCRLanguage68); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleCRLanguage"


    // $ANTLR start "ruleCRLanguage"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:69:1: ruleCRLanguage : ( ( rule__CRLanguage__ElementsAssignment )* ) ;
    public final void ruleCRLanguage() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:73:2: ( ( ( rule__CRLanguage__ElementsAssignment )* ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:74:1: ( ( rule__CRLanguage__ElementsAssignment )* )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:74:1: ( ( rule__CRLanguage__ElementsAssignment )* )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:75:1: ( rule__CRLanguage__ElementsAssignment )*
            {
             before(grammarAccess.getCRLanguageAccess().getElementsAssignment()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:76:1: ( rule__CRLanguage__ElementsAssignment )*
            loop1:
            do {
                int alt1=2;
                int LA1_0 = input.LA(1);

                if ( (LA1_0==RULE_ID||(LA1_0>=11 && LA1_0<=13)||LA1_0==25||(LA1_0>=29 && LA1_0<=35)) ) {
                    alt1=1;
                }


                switch (alt1) {
            	case 1 :
            	    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:76:2: rule__CRLanguage__ElementsAssignment
            	    {
            	    pushFollow(FOLLOW_rule__CRLanguage__ElementsAssignment_in_ruleCRLanguage94);
            	    rule__CRLanguage__ElementsAssignment();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop1;
                }
            } while (true);

             after(grammarAccess.getCRLanguageAccess().getElementsAssignment()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleCRLanguage"


    // $ANTLR start "entryRuleElement"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:88:1: entryRuleElement : ruleElement EOF ;
    public final void entryRuleElement() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:89:1: ( ruleElement EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:90:1: ruleElement EOF
            {
             before(grammarAccess.getElementRule()); 
            pushFollow(FOLLOW_ruleElement_in_entryRuleElement122);
            ruleElement();

            state._fsp--;

             after(grammarAccess.getElementRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleElement129); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleElement"


    // $ANTLR start "ruleElement"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:97:1: ruleElement : ( ( rule__Element__Alternatives ) ) ;
    public final void ruleElement() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:101:2: ( ( ( rule__Element__Alternatives ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:102:1: ( ( rule__Element__Alternatives ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:102:1: ( ( rule__Element__Alternatives ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:103:1: ( rule__Element__Alternatives )
            {
             before(grammarAccess.getElementAccess().getAlternatives()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:104:1: ( rule__Element__Alternatives )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:104:2: rule__Element__Alternatives
            {
            pushFollow(FOLLOW_rule__Element__Alternatives_in_ruleElement155);
            rule__Element__Alternatives();

            state._fsp--;


            }

             after(grammarAccess.getElementAccess().getAlternatives()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleElement"


    // $ANTLR start "entryRuleVarDec"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:116:1: entryRuleVarDec : ruleVarDec EOF ;
    public final void entryRuleVarDec() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:117:1: ( ruleVarDec EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:118:1: ruleVarDec EOF
            {
             before(grammarAccess.getVarDecRule()); 
            pushFollow(FOLLOW_ruleVarDec_in_entryRuleVarDec182);
            ruleVarDec();

            state._fsp--;

             after(grammarAccess.getVarDecRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleVarDec189); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleVarDec"


    // $ANTLR start "ruleVarDec"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:125:1: ruleVarDec : ( ( rule__VarDec__Alternatives ) ) ;
    public final void ruleVarDec() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:129:2: ( ( ( rule__VarDec__Alternatives ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:130:1: ( ( rule__VarDec__Alternatives ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:130:1: ( ( rule__VarDec__Alternatives ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:131:1: ( rule__VarDec__Alternatives )
            {
             before(grammarAccess.getVarDecAccess().getAlternatives()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:132:1: ( rule__VarDec__Alternatives )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:132:2: rule__VarDec__Alternatives
            {
            pushFollow(FOLLOW_rule__VarDec__Alternatives_in_ruleVarDec215);
            rule__VarDec__Alternatives();

            state._fsp--;


            }

             after(grammarAccess.getVarDecAccess().getAlternatives()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleVarDec"


    // $ANTLR start "entryRulePrimitiveDec"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:144:1: entryRulePrimitiveDec : rulePrimitiveDec EOF ;
    public final void entryRulePrimitiveDec() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:145:1: ( rulePrimitiveDec EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:146:1: rulePrimitiveDec EOF
            {
             before(grammarAccess.getPrimitiveDecRule()); 
            pushFollow(FOLLOW_rulePrimitiveDec_in_entryRulePrimitiveDec242);
            rulePrimitiveDec();

            state._fsp--;

             after(grammarAccess.getPrimitiveDecRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRulePrimitiveDec249); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRulePrimitiveDec"


    // $ANTLR start "rulePrimitiveDec"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:153:1: rulePrimitiveDec : ( ( rule__PrimitiveDec__Alternatives ) ) ;
    public final void rulePrimitiveDec() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:157:2: ( ( ( rule__PrimitiveDec__Alternatives ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:158:1: ( ( rule__PrimitiveDec__Alternatives ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:158:1: ( ( rule__PrimitiveDec__Alternatives ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:159:1: ( rule__PrimitiveDec__Alternatives )
            {
             before(grammarAccess.getPrimitiveDecAccess().getAlternatives()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:160:1: ( rule__PrimitiveDec__Alternatives )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:160:2: rule__PrimitiveDec__Alternatives
            {
            pushFollow(FOLLOW_rule__PrimitiveDec__Alternatives_in_rulePrimitiveDec275);
            rule__PrimitiveDec__Alternatives();

            state._fsp--;


            }

             after(grammarAccess.getPrimitiveDecAccess().getAlternatives()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rulePrimitiveDec"


    // $ANTLR start "entryRuleIntDec"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:172:1: entryRuleIntDec : ruleIntDec EOF ;
    public final void entryRuleIntDec() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:173:1: ( ruleIntDec EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:174:1: ruleIntDec EOF
            {
             before(grammarAccess.getIntDecRule()); 
            pushFollow(FOLLOW_ruleIntDec_in_entryRuleIntDec302);
            ruleIntDec();

            state._fsp--;

             after(grammarAccess.getIntDecRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleIntDec309); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleIntDec"


    // $ANTLR start "ruleIntDec"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:181:1: ruleIntDec : ( ( rule__IntDec__Group__0 ) ) ;
    public final void ruleIntDec() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:185:2: ( ( ( rule__IntDec__Group__0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:186:1: ( ( rule__IntDec__Group__0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:186:1: ( ( rule__IntDec__Group__0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:187:1: ( rule__IntDec__Group__0 )
            {
             before(grammarAccess.getIntDecAccess().getGroup()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:188:1: ( rule__IntDec__Group__0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:188:2: rule__IntDec__Group__0
            {
            pushFollow(FOLLOW_rule__IntDec__Group__0_in_ruleIntDec335);
            rule__IntDec__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getIntDecAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleIntDec"


    // $ANTLR start "entryRuleRealDec"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:200:1: entryRuleRealDec : ruleRealDec EOF ;
    public final void entryRuleRealDec() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:201:1: ( ruleRealDec EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:202:1: ruleRealDec EOF
            {
             before(grammarAccess.getRealDecRule()); 
            pushFollow(FOLLOW_ruleRealDec_in_entryRuleRealDec362);
            ruleRealDec();

            state._fsp--;

             after(grammarAccess.getRealDecRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleRealDec369); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleRealDec"


    // $ANTLR start "ruleRealDec"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:209:1: ruleRealDec : ( ( rule__RealDec__Group__0 ) ) ;
    public final void ruleRealDec() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:213:2: ( ( ( rule__RealDec__Group__0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:214:1: ( ( rule__RealDec__Group__0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:214:1: ( ( rule__RealDec__Group__0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:215:1: ( rule__RealDec__Group__0 )
            {
             before(grammarAccess.getRealDecAccess().getGroup()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:216:1: ( rule__RealDec__Group__0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:216:2: rule__RealDec__Group__0
            {
            pushFollow(FOLLOW_rule__RealDec__Group__0_in_ruleRealDec395);
            rule__RealDec__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getRealDecAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleRealDec"


    // $ANTLR start "entryRulePartitionDec"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:228:1: entryRulePartitionDec : rulePartitionDec EOF ;
    public final void entryRulePartitionDec() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:229:1: ( rulePartitionDec EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:230:1: rulePartitionDec EOF
            {
             before(grammarAccess.getPartitionDecRule()); 
            pushFollow(FOLLOW_rulePartitionDec_in_entryRulePartitionDec422);
            rulePartitionDec();

            state._fsp--;

             after(grammarAccess.getPartitionDecRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRulePartitionDec429); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRulePartitionDec"


    // $ANTLR start "rulePartitionDec"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:237:1: rulePartitionDec : ( ( rule__PartitionDec__Group__0 ) ) ;
    public final void rulePartitionDec() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:241:2: ( ( ( rule__PartitionDec__Group__0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:242:1: ( ( rule__PartitionDec__Group__0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:242:1: ( ( rule__PartitionDec__Group__0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:243:1: ( rule__PartitionDec__Group__0 )
            {
             before(grammarAccess.getPartitionDecAccess().getGroup()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:244:1: ( rule__PartitionDec__Group__0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:244:2: rule__PartitionDec__Group__0
            {
            pushFollow(FOLLOW_rule__PartitionDec__Group__0_in_rulePartitionDec455);
            rule__PartitionDec__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getPartitionDecAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rulePartitionDec"


    // $ANTLR start "entryRuleArrayDec"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:256:1: entryRuleArrayDec : ruleArrayDec EOF ;
    public final void entryRuleArrayDec() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:257:1: ( ruleArrayDec EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:258:1: ruleArrayDec EOF
            {
             before(grammarAccess.getArrayDecRule()); 
            pushFollow(FOLLOW_ruleArrayDec_in_entryRuleArrayDec482);
            ruleArrayDec();

            state._fsp--;

             after(grammarAccess.getArrayDecRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleArrayDec489); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleArrayDec"


    // $ANTLR start "ruleArrayDec"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:265:1: ruleArrayDec : ( ( rule__ArrayDec__Group__0 ) ) ;
    public final void ruleArrayDec() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:269:2: ( ( ( rule__ArrayDec__Group__0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:270:1: ( ( rule__ArrayDec__Group__0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:270:1: ( ( rule__ArrayDec__Group__0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:271:1: ( rule__ArrayDec__Group__0 )
            {
             before(grammarAccess.getArrayDecAccess().getGroup()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:272:1: ( rule__ArrayDec__Group__0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:272:2: rule__ArrayDec__Group__0
            {
            pushFollow(FOLLOW_rule__ArrayDec__Group__0_in_ruleArrayDec515);
            rule__ArrayDec__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getArrayDecAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleArrayDec"


    // $ANTLR start "entryRuleAssignment"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:284:1: entryRuleAssignment : ruleAssignment EOF ;
    public final void entryRuleAssignment() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:285:1: ( ruleAssignment EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:286:1: ruleAssignment EOF
            {
             before(grammarAccess.getAssignmentRule()); 
            pushFollow(FOLLOW_ruleAssignment_in_entryRuleAssignment542);
            ruleAssignment();

            state._fsp--;

             after(grammarAccess.getAssignmentRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleAssignment549); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleAssignment"


    // $ANTLR start "ruleAssignment"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:293:1: ruleAssignment : ( ( rule__Assignment__Group__0 ) ) ;
    public final void ruleAssignment() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:297:2: ( ( ( rule__Assignment__Group__0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:298:1: ( ( rule__Assignment__Group__0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:298:1: ( ( rule__Assignment__Group__0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:299:1: ( rule__Assignment__Group__0 )
            {
             before(grammarAccess.getAssignmentAccess().getGroup()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:300:1: ( rule__Assignment__Group__0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:300:2: rule__Assignment__Group__0
            {
            pushFollow(FOLLOW_rule__Assignment__Group__0_in_ruleAssignment575);
            rule__Assignment__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getAssignmentAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleAssignment"


    // $ANTLR start "entryRuleArrayMethod"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:312:1: entryRuleArrayMethod : ruleArrayMethod EOF ;
    public final void entryRuleArrayMethod() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:313:1: ( ruleArrayMethod EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:314:1: ruleArrayMethod EOF
            {
             before(grammarAccess.getArrayMethodRule()); 
            pushFollow(FOLLOW_ruleArrayMethod_in_entryRuleArrayMethod602);
            ruleArrayMethod();

            state._fsp--;

             after(grammarAccess.getArrayMethodRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleArrayMethod609); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleArrayMethod"


    // $ANTLR start "ruleArrayMethod"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:321:1: ruleArrayMethod : ( ( rule__ArrayMethod__Alternatives ) ) ;
    public final void ruleArrayMethod() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:325:2: ( ( ( rule__ArrayMethod__Alternatives ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:326:1: ( ( rule__ArrayMethod__Alternatives ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:326:1: ( ( rule__ArrayMethod__Alternatives ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:327:1: ( rule__ArrayMethod__Alternatives )
            {
             before(grammarAccess.getArrayMethodAccess().getAlternatives()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:328:1: ( rule__ArrayMethod__Alternatives )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:328:2: rule__ArrayMethod__Alternatives
            {
            pushFollow(FOLLOW_rule__ArrayMethod__Alternatives_in_ruleArrayMethod635);
            rule__ArrayMethod__Alternatives();

            state._fsp--;


            }

             after(grammarAccess.getArrayMethodAccess().getAlternatives()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleArrayMethod"


    // $ANTLR start "entryRuleSize"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:340:1: entryRuleSize : ruleSize EOF ;
    public final void entryRuleSize() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:341:1: ( ruleSize EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:342:1: ruleSize EOF
            {
             before(grammarAccess.getSizeRule()); 
            pushFollow(FOLLOW_ruleSize_in_entryRuleSize662);
            ruleSize();

            state._fsp--;

             after(grammarAccess.getSizeRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleSize669); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleSize"


    // $ANTLR start "ruleSize"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:349:1: ruleSize : ( ( rule__Size__Group__0 ) ) ;
    public final void ruleSize() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:353:2: ( ( ( rule__Size__Group__0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:354:1: ( ( rule__Size__Group__0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:354:1: ( ( rule__Size__Group__0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:355:1: ( rule__Size__Group__0 )
            {
             before(grammarAccess.getSizeAccess().getGroup()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:356:1: ( rule__Size__Group__0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:356:2: rule__Size__Group__0
            {
            pushFollow(FOLLOW_rule__Size__Group__0_in_ruleSize695);
            rule__Size__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getSizeAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleSize"


    // $ANTLR start "entryRuleAdd"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:368:1: entryRuleAdd : ruleAdd EOF ;
    public final void entryRuleAdd() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:369:1: ( ruleAdd EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:370:1: ruleAdd EOF
            {
             before(grammarAccess.getAddRule()); 
            pushFollow(FOLLOW_ruleAdd_in_entryRuleAdd722);
            ruleAdd();

            state._fsp--;

             after(grammarAccess.getAddRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleAdd729); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleAdd"


    // $ANTLR start "ruleAdd"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:377:1: ruleAdd : ( ( rule__Add__Group__0 ) ) ;
    public final void ruleAdd() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:381:2: ( ( ( rule__Add__Group__0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:382:1: ( ( rule__Add__Group__0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:382:1: ( ( rule__Add__Group__0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:383:1: ( rule__Add__Group__0 )
            {
             before(grammarAccess.getAddAccess().getGroup()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:384:1: ( rule__Add__Group__0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:384:2: rule__Add__Group__0
            {
            pushFollow(FOLLOW_rule__Add__Group__0_in_ruleAdd755);
            rule__Add__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getAddAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleAdd"


    // $ANTLR start "entryRuleDelete"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:396:1: entryRuleDelete : ruleDelete EOF ;
    public final void entryRuleDelete() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:397:1: ( ruleDelete EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:398:1: ruleDelete EOF
            {
             before(grammarAccess.getDeleteRule()); 
            pushFollow(FOLLOW_ruleDelete_in_entryRuleDelete782);
            ruleDelete();

            state._fsp--;

             after(grammarAccess.getDeleteRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleDelete789); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleDelete"


    // $ANTLR start "ruleDelete"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:405:1: ruleDelete : ( ( rule__Delete__Alternatives ) ) ;
    public final void ruleDelete() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:409:2: ( ( ( rule__Delete__Alternatives ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:410:1: ( ( rule__Delete__Alternatives ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:410:1: ( ( rule__Delete__Alternatives ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:411:1: ( rule__Delete__Alternatives )
            {
             before(grammarAccess.getDeleteAccess().getAlternatives()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:412:1: ( rule__Delete__Alternatives )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:412:2: rule__Delete__Alternatives
            {
            pushFollow(FOLLOW_rule__Delete__Alternatives_in_ruleDelete815);
            rule__Delete__Alternatives();

            state._fsp--;


            }

             after(grammarAccess.getDeleteAccess().getAlternatives()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleDelete"


    // $ANTLR start "entryRuleFunction"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:424:1: entryRuleFunction : ruleFunction EOF ;
    public final void entryRuleFunction() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:425:1: ( ruleFunction EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:426:1: ruleFunction EOF
            {
             before(grammarAccess.getFunctionRule()); 
            pushFollow(FOLLOW_ruleFunction_in_entryRuleFunction842);
            ruleFunction();

            state._fsp--;

             after(grammarAccess.getFunctionRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleFunction849); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleFunction"


    // $ANTLR start "ruleFunction"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:433:1: ruleFunction : ( ( rule__Function__Alternatives ) ) ;
    public final void ruleFunction() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:437:2: ( ( ( rule__Function__Alternatives ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:438:1: ( ( rule__Function__Alternatives ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:438:1: ( ( rule__Function__Alternatives ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:439:1: ( rule__Function__Alternatives )
            {
             before(grammarAccess.getFunctionAccess().getAlternatives()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:440:1: ( rule__Function__Alternatives )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:440:2: rule__Function__Alternatives
            {
            pushFollow(FOLLOW_rule__Function__Alternatives_in_ruleFunction875);
            rule__Function__Alternatives();

            state._fsp--;


            }

             after(grammarAccess.getFunctionAccess().getAlternatives()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleFunction"


    // $ANTLR start "entryRuleStandardFunction"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:452:1: entryRuleStandardFunction : ruleStandardFunction EOF ;
    public final void entryRuleStandardFunction() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:453:1: ( ruleStandardFunction EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:454:1: ruleStandardFunction EOF
            {
             before(grammarAccess.getStandardFunctionRule()); 
            pushFollow(FOLLOW_ruleStandardFunction_in_entryRuleStandardFunction902);
            ruleStandardFunction();

            state._fsp--;

             after(grammarAccess.getStandardFunctionRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleStandardFunction909); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleStandardFunction"


    // $ANTLR start "ruleStandardFunction"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:461:1: ruleStandardFunction : ( ( rule__StandardFunction__Alternatives ) ) ;
    public final void ruleStandardFunction() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:465:2: ( ( ( rule__StandardFunction__Alternatives ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:466:1: ( ( rule__StandardFunction__Alternatives ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:466:1: ( ( rule__StandardFunction__Alternatives ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:467:1: ( rule__StandardFunction__Alternatives )
            {
             before(grammarAccess.getStandardFunctionAccess().getAlternatives()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:468:1: ( rule__StandardFunction__Alternatives )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:468:2: rule__StandardFunction__Alternatives
            {
            pushFollow(FOLLOW_rule__StandardFunction__Alternatives_in_ruleStandardFunction935);
            rule__StandardFunction__Alternatives();

            state._fsp--;


            }

             after(grammarAccess.getStandardFunctionAccess().getAlternatives()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleStandardFunction"


    // $ANTLR start "entryRulePrint"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:480:1: entryRulePrint : rulePrint EOF ;
    public final void entryRulePrint() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:481:1: ( rulePrint EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:482:1: rulePrint EOF
            {
             before(grammarAccess.getPrintRule()); 
            pushFollow(FOLLOW_rulePrint_in_entryRulePrint962);
            rulePrint();

            state._fsp--;

             after(grammarAccess.getPrintRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRulePrint969); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRulePrint"


    // $ANTLR start "rulePrint"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:489:1: rulePrint : ( ( rule__Print__Group__0 ) ) ;
    public final void rulePrint() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:493:2: ( ( ( rule__Print__Group__0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:494:1: ( ( rule__Print__Group__0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:494:1: ( ( rule__Print__Group__0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:495:1: ( rule__Print__Group__0 )
            {
             before(grammarAccess.getPrintAccess().getGroup()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:496:1: ( rule__Print__Group__0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:496:2: rule__Print__Group__0
            {
            pushFollow(FOLLOW_rule__Print__Group__0_in_rulePrint995);
            rule__Print__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getPrintAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rulePrint"


    // $ANTLR start "entryRuleFor"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:508:1: entryRuleFor : ruleFor EOF ;
    public final void entryRuleFor() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:509:1: ( ruleFor EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:510:1: ruleFor EOF
            {
             before(grammarAccess.getForRule()); 
            pushFollow(FOLLOW_ruleFor_in_entryRuleFor1022);
            ruleFor();

            state._fsp--;

             after(grammarAccess.getForRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleFor1029); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleFor"


    // $ANTLR start "ruleFor"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:517:1: ruleFor : ( ( rule__For__Alternatives ) ) ;
    public final void ruleFor() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:521:2: ( ( ( rule__For__Alternatives ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:522:1: ( ( rule__For__Alternatives ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:522:1: ( ( rule__For__Alternatives ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:523:1: ( rule__For__Alternatives )
            {
             before(grammarAccess.getForAccess().getAlternatives()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:524:1: ( rule__For__Alternatives )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:524:2: rule__For__Alternatives
            {
            pushFollow(FOLLOW_rule__For__Alternatives_in_ruleFor1055);
            rule__For__Alternatives();

            state._fsp--;


            }

             after(grammarAccess.getForAccess().getAlternatives()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleFor"


    // $ANTLR start "entryRuleForall"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:536:1: entryRuleForall : ruleForall EOF ;
    public final void entryRuleForall() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:537:1: ( ruleForall EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:538:1: ruleForall EOF
            {
             before(grammarAccess.getForallRule()); 
            pushFollow(FOLLOW_ruleForall_in_entryRuleForall1082);
            ruleForall();

            state._fsp--;

             after(grammarAccess.getForallRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleForall1089); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleForall"


    // $ANTLR start "ruleForall"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:545:1: ruleForall : ( ( rule__Forall__Group__0 ) ) ;
    public final void ruleForall() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:549:2: ( ( ( rule__Forall__Group__0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:550:1: ( ( rule__Forall__Group__0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:550:1: ( ( rule__Forall__Group__0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:551:1: ( rule__Forall__Group__0 )
            {
             before(grammarAccess.getForallAccess().getGroup()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:552:1: ( rule__Forall__Group__0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:552:2: rule__Forall__Group__0
            {
            pushFollow(FOLLOW_rule__Forall__Group__0_in_ruleForall1115);
            rule__Forall__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getForallAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleForall"


    // $ANTLR start "entryRuleCRFunction"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:564:1: entryRuleCRFunction : ruleCRFunction EOF ;
    public final void entryRuleCRFunction() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:565:1: ( ruleCRFunction EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:566:1: ruleCRFunction EOF
            {
             before(grammarAccess.getCRFunctionRule()); 
            pushFollow(FOLLOW_ruleCRFunction_in_entryRuleCRFunction1142);
            ruleCRFunction();

            state._fsp--;

             after(grammarAccess.getCRFunctionRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleCRFunction1149); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleCRFunction"


    // $ANTLR start "ruleCRFunction"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:573:1: ruleCRFunction : ( ( rule__CRFunction__Alternatives ) ) ;
    public final void ruleCRFunction() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:577:2: ( ( ( rule__CRFunction__Alternatives ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:578:1: ( ( rule__CRFunction__Alternatives ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:578:1: ( ( rule__CRFunction__Alternatives ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:579:1: ( rule__CRFunction__Alternatives )
            {
             before(grammarAccess.getCRFunctionAccess().getAlternatives()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:580:1: ( rule__CRFunction__Alternatives )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:580:2: rule__CRFunction__Alternatives
            {
            pushFollow(FOLLOW_rule__CRFunction__Alternatives_in_ruleCRFunction1175);
            rule__CRFunction__Alternatives();

            state._fsp--;


            }

             after(grammarAccess.getCRFunctionAccess().getAlternatives()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleCRFunction"


    // $ANTLR start "entryRuleCalcCR"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:592:1: entryRuleCalcCR : ruleCalcCR EOF ;
    public final void entryRuleCalcCR() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:593:1: ( ruleCalcCR EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:594:1: ruleCalcCR EOF
            {
             before(grammarAccess.getCalcCRRule()); 
            pushFollow(FOLLOW_ruleCalcCR_in_entryRuleCalcCR1202);
            ruleCalcCR();

            state._fsp--;

             after(grammarAccess.getCalcCRRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleCalcCR1209); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleCalcCR"


    // $ANTLR start "ruleCalcCR"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:601:1: ruleCalcCR : ( ( rule__CalcCR__Alternatives ) ) ;
    public final void ruleCalcCR() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:605:2: ( ( ( rule__CalcCR__Alternatives ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:606:1: ( ( rule__CalcCR__Alternatives ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:606:1: ( ( rule__CalcCR__Alternatives ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:607:1: ( rule__CalcCR__Alternatives )
            {
             before(grammarAccess.getCalcCRAccess().getAlternatives()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:608:1: ( rule__CalcCR__Alternatives )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:608:2: rule__CalcCR__Alternatives
            {
            pushFollow(FOLLOW_rule__CalcCR__Alternatives_in_ruleCalcCR1235);
            rule__CalcCR__Alternatives();

            state._fsp--;


            }

             after(grammarAccess.getCalcCRAccess().getAlternatives()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleCalcCR"


    // $ANTLR start "entryRuleCalcMean"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:620:1: entryRuleCalcMean : ruleCalcMean EOF ;
    public final void entryRuleCalcMean() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:621:1: ( ruleCalcMean EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:622:1: ruleCalcMean EOF
            {
             before(grammarAccess.getCalcMeanRule()); 
            pushFollow(FOLLOW_ruleCalcMean_in_entryRuleCalcMean1262);
            ruleCalcMean();

            state._fsp--;

             after(grammarAccess.getCalcMeanRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleCalcMean1269); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleCalcMean"


    // $ANTLR start "ruleCalcMean"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:629:1: ruleCalcMean : ( ( rule__CalcMean__Group__0 ) ) ;
    public final void ruleCalcMean() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:633:2: ( ( ( rule__CalcMean__Group__0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:634:1: ( ( rule__CalcMean__Group__0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:634:1: ( ( rule__CalcMean__Group__0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:635:1: ( rule__CalcMean__Group__0 )
            {
             before(grammarAccess.getCalcMeanAccess().getGroup()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:636:1: ( rule__CalcMean__Group__0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:636:2: rule__CalcMean__Group__0
            {
            pushFollow(FOLLOW_rule__CalcMean__Group__0_in_ruleCalcMean1295);
            rule__CalcMean__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getCalcMeanAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleCalcMean"


    // $ANTLR start "entryRuleHighestCR"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:648:1: entryRuleHighestCR : ruleHighestCR EOF ;
    public final void entryRuleHighestCR() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:649:1: ( ruleHighestCR EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:650:1: ruleHighestCR EOF
            {
             before(grammarAccess.getHighestCRRule()); 
            pushFollow(FOLLOW_ruleHighestCR_in_entryRuleHighestCR1322);
            ruleHighestCR();

            state._fsp--;

             after(grammarAccess.getHighestCRRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleHighestCR1329); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleHighestCR"


    // $ANTLR start "ruleHighestCR"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:657:1: ruleHighestCR : ( ( rule__HighestCR__Group__0 ) ) ;
    public final void ruleHighestCR() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:661:2: ( ( ( rule__HighestCR__Group__0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:662:1: ( ( rule__HighestCR__Group__0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:662:1: ( ( rule__HighestCR__Group__0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:663:1: ( rule__HighestCR__Group__0 )
            {
             before(grammarAccess.getHighestCRAccess().getGroup()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:664:1: ( rule__HighestCR__Group__0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:664:2: rule__HighestCR__Group__0
            {
            pushFollow(FOLLOW_rule__HighestCR__Group__0_in_ruleHighestCR1355);
            rule__HighestCR__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getHighestCRAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleHighestCR"


    // $ANTLR start "entryRuleFindSimilar"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:676:1: entryRuleFindSimilar : ruleFindSimilar EOF ;
    public final void entryRuleFindSimilar() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:677:1: ( ruleFindSimilar EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:678:1: ruleFindSimilar EOF
            {
             before(grammarAccess.getFindSimilarRule()); 
            pushFollow(FOLLOW_ruleFindSimilar_in_entryRuleFindSimilar1382);
            ruleFindSimilar();

            state._fsp--;

             after(grammarAccess.getFindSimilarRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleFindSimilar1389); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleFindSimilar"


    // $ANTLR start "ruleFindSimilar"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:685:1: ruleFindSimilar : ( ( rule__FindSimilar__Group__0 ) ) ;
    public final void ruleFindSimilar() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:689:2: ( ( ( rule__FindSimilar__Group__0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:690:1: ( ( rule__FindSimilar__Group__0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:690:1: ( ( rule__FindSimilar__Group__0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:691:1: ( rule__FindSimilar__Group__0 )
            {
             before(grammarAccess.getFindSimilarAccess().getGroup()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:692:1: ( rule__FindSimilar__Group__0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:692:2: rule__FindSimilar__Group__0
            {
            pushFollow(FOLLOW_rule__FindSimilar__Group__0_in_ruleFindSimilar1415);
            rule__FindSimilar__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getFindSimilarAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleFindSimilar"


    // $ANTLR start "entryRuleSimpleVariable"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:706:1: entryRuleSimpleVariable : ruleSimpleVariable EOF ;
    public final void entryRuleSimpleVariable() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:707:1: ( ruleSimpleVariable EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:708:1: ruleSimpleVariable EOF
            {
             before(grammarAccess.getSimpleVariableRule()); 
            pushFollow(FOLLOW_ruleSimpleVariable_in_entryRuleSimpleVariable1444);
            ruleSimpleVariable();

            state._fsp--;

             after(grammarAccess.getSimpleVariableRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleSimpleVariable1451); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleSimpleVariable"


    // $ANTLR start "ruleSimpleVariable"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:715:1: ruleSimpleVariable : ( ( rule__SimpleVariable__NameAssignment ) ) ;
    public final void ruleSimpleVariable() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:719:2: ( ( ( rule__SimpleVariable__NameAssignment ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:720:1: ( ( rule__SimpleVariable__NameAssignment ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:720:1: ( ( rule__SimpleVariable__NameAssignment ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:721:1: ( rule__SimpleVariable__NameAssignment )
            {
             before(grammarAccess.getSimpleVariableAccess().getNameAssignment()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:722:1: ( rule__SimpleVariable__NameAssignment )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:722:2: rule__SimpleVariable__NameAssignment
            {
            pushFollow(FOLLOW_rule__SimpleVariable__NameAssignment_in_ruleSimpleVariable1477);
            rule__SimpleVariable__NameAssignment();

            state._fsp--;


            }

             after(grammarAccess.getSimpleVariableAccess().getNameAssignment()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleSimpleVariable"


    // $ANTLR start "entryRuleArray"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:734:1: entryRuleArray : ruleArray EOF ;
    public final void entryRuleArray() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:735:1: ( ruleArray EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:736:1: ruleArray EOF
            {
             before(grammarAccess.getArrayRule()); 
            pushFollow(FOLLOW_ruleArray_in_entryRuleArray1504);
            ruleArray();

            state._fsp--;

             after(grammarAccess.getArrayRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleArray1511); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleArray"


    // $ANTLR start "ruleArray"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:743:1: ruleArray : ( ( rule__Array__NameAssignment ) ) ;
    public final void ruleArray() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:747:2: ( ( ( rule__Array__NameAssignment ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:748:1: ( ( rule__Array__NameAssignment ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:748:1: ( ( rule__Array__NameAssignment ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:749:1: ( rule__Array__NameAssignment )
            {
             before(grammarAccess.getArrayAccess().getNameAssignment()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:750:1: ( rule__Array__NameAssignment )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:750:2: rule__Array__NameAssignment
            {
            pushFollow(FOLLOW_rule__Array__NameAssignment_in_ruleArray1537);
            rule__Array__NameAssignment();

            state._fsp--;


            }

             after(grammarAccess.getArrayAccess().getNameAssignment()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleArray"


    // $ANTLR start "entryRuleNumber"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:762:1: entryRuleNumber : ruleNumber EOF ;
    public final void entryRuleNumber() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:763:1: ( ruleNumber EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:764:1: ruleNumber EOF
            {
             before(grammarAccess.getNumberRule()); 
            pushFollow(FOLLOW_ruleNumber_in_entryRuleNumber1564);
            ruleNumber();

            state._fsp--;

             after(grammarAccess.getNumberRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleNumber1571); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleNumber"


    // $ANTLR start "ruleNumber"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:771:1: ruleNumber : ( ( rule__Number__Group__0 ) ) ;
    public final void ruleNumber() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:775:2: ( ( ( rule__Number__Group__0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:776:1: ( ( rule__Number__Group__0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:776:1: ( ( rule__Number__Group__0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:777:1: ( rule__Number__Group__0 )
            {
             before(grammarAccess.getNumberAccess().getGroup()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:778:1: ( rule__Number__Group__0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:778:2: rule__Number__Group__0
            {
            pushFollow(FOLLOW_rule__Number__Group__0_in_ruleNumber1597);
            rule__Number__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getNumberAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleNumber"


    // $ANTLR start "entryRuleFolder"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:790:1: entryRuleFolder : ruleFolder EOF ;
    public final void entryRuleFolder() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:791:1: ( ruleFolder EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:792:1: ruleFolder EOF
            {
             before(grammarAccess.getFolderRule()); 
            pushFollow(FOLLOW_ruleFolder_in_entryRuleFolder1624);
            ruleFolder();

            state._fsp--;

             after(grammarAccess.getFolderRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleFolder1631); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleFolder"


    // $ANTLR start "ruleFolder"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:799:1: ruleFolder : ( ( rule__Folder__Alternatives ) ) ;
    public final void ruleFolder() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:803:2: ( ( ( rule__Folder__Alternatives ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:804:1: ( ( rule__Folder__Alternatives ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:804:1: ( ( rule__Folder__Alternatives ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:805:1: ( rule__Folder__Alternatives )
            {
             before(grammarAccess.getFolderAccess().getAlternatives()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:806:1: ( rule__Folder__Alternatives )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:806:2: rule__Folder__Alternatives
            {
            pushFollow(FOLLOW_rule__Folder__Alternatives_in_ruleFolder1657);
            rule__Folder__Alternatives();

            state._fsp--;


            }

             after(grammarAccess.getFolderAccess().getAlternatives()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleFolder"


    // $ANTLR start "entryRuleArchive"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:818:1: entryRuleArchive : ruleArchive EOF ;
    public final void entryRuleArchive() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:819:1: ( ruleArchive EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:820:1: ruleArchive EOF
            {
             before(grammarAccess.getArchiveRule()); 
            pushFollow(FOLLOW_ruleArchive_in_entryRuleArchive1684);
            ruleArchive();

            state._fsp--;

             after(grammarAccess.getArchiveRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleArchive1691); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleArchive"


    // $ANTLR start "ruleArchive"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:827:1: ruleArchive : ( ( rule__Archive__Group__0 ) ) ;
    public final void ruleArchive() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:831:2: ( ( ( rule__Archive__Group__0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:832:1: ( ( rule__Archive__Group__0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:832:1: ( ( rule__Archive__Group__0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:833:1: ( rule__Archive__Group__0 )
            {
             before(grammarAccess.getArchiveAccess().getGroup()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:834:1: ( rule__Archive__Group__0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:834:2: rule__Archive__Group__0
            {
            pushFollow(FOLLOW_rule__Archive__Group__0_in_ruleArchive1717);
            rule__Archive__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getArchiveAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleArchive"


    // $ANTLR start "entryRuleLinuxFolder"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:846:1: entryRuleLinuxFolder : ruleLinuxFolder EOF ;
    public final void entryRuleLinuxFolder() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:847:1: ( ruleLinuxFolder EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:848:1: ruleLinuxFolder EOF
            {
             before(grammarAccess.getLinuxFolderRule()); 
            pushFollow(FOLLOW_ruleLinuxFolder_in_entryRuleLinuxFolder1744);
            ruleLinuxFolder();

            state._fsp--;

             after(grammarAccess.getLinuxFolderRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleLinuxFolder1751); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleLinuxFolder"


    // $ANTLR start "ruleLinuxFolder"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:855:1: ruleLinuxFolder : ( ( rule__LinuxFolder__Group__0 ) ) ;
    public final void ruleLinuxFolder() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:859:2: ( ( ( rule__LinuxFolder__Group__0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:860:1: ( ( rule__LinuxFolder__Group__0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:860:1: ( ( rule__LinuxFolder__Group__0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:861:1: ( rule__LinuxFolder__Group__0 )
            {
             before(grammarAccess.getLinuxFolderAccess().getGroup()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:862:1: ( rule__LinuxFolder__Group__0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:862:2: rule__LinuxFolder__Group__0
            {
            pushFollow(FOLLOW_rule__LinuxFolder__Group__0_in_ruleLinuxFolder1777);
            rule__LinuxFolder__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getLinuxFolderAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleLinuxFolder"


    // $ANTLR start "entryRuleWindowsFolder"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:874:1: entryRuleWindowsFolder : ruleWindowsFolder EOF ;
    public final void entryRuleWindowsFolder() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:875:1: ( ruleWindowsFolder EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:876:1: ruleWindowsFolder EOF
            {
             before(grammarAccess.getWindowsFolderRule()); 
            pushFollow(FOLLOW_ruleWindowsFolder_in_entryRuleWindowsFolder1804);
            ruleWindowsFolder();

            state._fsp--;

             after(grammarAccess.getWindowsFolderRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleWindowsFolder1811); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleWindowsFolder"


    // $ANTLR start "ruleWindowsFolder"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:883:1: ruleWindowsFolder : ( ( rule__WindowsFolder__Group__0 ) ) ;
    public final void ruleWindowsFolder() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:887:2: ( ( ( rule__WindowsFolder__Group__0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:888:1: ( ( rule__WindowsFolder__Group__0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:888:1: ( ( rule__WindowsFolder__Group__0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:889:1: ( rule__WindowsFolder__Group__0 )
            {
             before(grammarAccess.getWindowsFolderAccess().getGroup()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:890:1: ( rule__WindowsFolder__Group__0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:890:2: rule__WindowsFolder__Group__0
            {
            pushFollow(FOLLOW_rule__WindowsFolder__Group__0_in_ruleWindowsFolder1837);
            rule__WindowsFolder__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getWindowsFolderAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleWindowsFolder"


    // $ANTLR start "entryRuleArrayElement"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:902:1: entryRuleArrayElement : ruleArrayElement EOF ;
    public final void entryRuleArrayElement() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:903:1: ( ruleArrayElement EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:904:1: ruleArrayElement EOF
            {
             before(grammarAccess.getArrayElementRule()); 
            pushFollow(FOLLOW_ruleArrayElement_in_entryRuleArrayElement1864);
            ruleArrayElement();

            state._fsp--;

             after(grammarAccess.getArrayElementRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleArrayElement1871); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleArrayElement"


    // $ANTLR start "ruleArrayElement"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:911:1: ruleArrayElement : ( ( rule__ArrayElement__Group__0 ) ) ;
    public final void ruleArrayElement() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:915:2: ( ( ( rule__ArrayElement__Group__0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:916:1: ( ( rule__ArrayElement__Group__0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:916:1: ( ( rule__ArrayElement__Group__0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:917:1: ( rule__ArrayElement__Group__0 )
            {
             before(grammarAccess.getArrayElementAccess().getGroup()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:918:1: ( rule__ArrayElement__Group__0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:918:2: rule__ArrayElement__Group__0
            {
            pushFollow(FOLLOW_rule__ArrayElement__Group__0_in_ruleArrayElement1897);
            rule__ArrayElement__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getArrayElementAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleArrayElement"


    // $ANTLR start "entryRuleIndex"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:930:1: entryRuleIndex : ruleIndex EOF ;
    public final void entryRuleIndex() throws RecognitionException {
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:931:1: ( ruleIndex EOF )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:932:1: ruleIndex EOF
            {
             before(grammarAccess.getIndexRule()); 
            pushFollow(FOLLOW_ruleIndex_in_entryRuleIndex1924);
            ruleIndex();

            state._fsp--;

             after(grammarAccess.getIndexRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleIndex1931); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleIndex"


    // $ANTLR start "ruleIndex"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:939:1: ruleIndex : ( ( rule__Index__Group__0 ) ) ;
    public final void ruleIndex() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:943:2: ( ( ( rule__Index__Group__0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:944:1: ( ( rule__Index__Group__0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:944:1: ( ( rule__Index__Group__0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:945:1: ( rule__Index__Group__0 )
            {
             before(grammarAccess.getIndexAccess().getGroup()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:946:1: ( rule__Index__Group__0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:946:2: rule__Index__Group__0
            {
            pushFollow(FOLLOW_rule__Index__Group__0_in_ruleIndex1957);
            rule__Index__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getIndexAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleIndex"


    // $ANTLR start "rule__Element__Alternatives"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:958:1: rule__Element__Alternatives : ( ( ( rule__Element__VarDecAssignment_0 ) ) | ( ( rule__Element__AssignmentAssignment_1 ) ) | ( ( rule__Element__ArrayMethodAssignment_2 ) ) | ( ( rule__Element__FunctionAssignment_3 ) ) );
    public final void rule__Element__Alternatives() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:962:1: ( ( ( rule__Element__VarDecAssignment_0 ) ) | ( ( rule__Element__AssignmentAssignment_1 ) ) | ( ( rule__Element__ArrayMethodAssignment_2 ) ) | ( ( rule__Element__FunctionAssignment_3 ) ) )
            int alt2=4;
            alt2 = dfa2.predict(input);
            switch (alt2) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:963:1: ( ( rule__Element__VarDecAssignment_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:963:1: ( ( rule__Element__VarDecAssignment_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:964:1: ( rule__Element__VarDecAssignment_0 )
                    {
                     before(grammarAccess.getElementAccess().getVarDecAssignment_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:965:1: ( rule__Element__VarDecAssignment_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:965:2: rule__Element__VarDecAssignment_0
                    {
                    pushFollow(FOLLOW_rule__Element__VarDecAssignment_0_in_rule__Element__Alternatives1993);
                    rule__Element__VarDecAssignment_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getElementAccess().getVarDecAssignment_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:969:6: ( ( rule__Element__AssignmentAssignment_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:969:6: ( ( rule__Element__AssignmentAssignment_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:970:1: ( rule__Element__AssignmentAssignment_1 )
                    {
                     before(grammarAccess.getElementAccess().getAssignmentAssignment_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:971:1: ( rule__Element__AssignmentAssignment_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:971:2: rule__Element__AssignmentAssignment_1
                    {
                    pushFollow(FOLLOW_rule__Element__AssignmentAssignment_1_in_rule__Element__Alternatives2011);
                    rule__Element__AssignmentAssignment_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getElementAccess().getAssignmentAssignment_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:975:6: ( ( rule__Element__ArrayMethodAssignment_2 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:975:6: ( ( rule__Element__ArrayMethodAssignment_2 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:976:1: ( rule__Element__ArrayMethodAssignment_2 )
                    {
                     before(grammarAccess.getElementAccess().getArrayMethodAssignment_2()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:977:1: ( rule__Element__ArrayMethodAssignment_2 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:977:2: rule__Element__ArrayMethodAssignment_2
                    {
                    pushFollow(FOLLOW_rule__Element__ArrayMethodAssignment_2_in_rule__Element__Alternatives2029);
                    rule__Element__ArrayMethodAssignment_2();

                    state._fsp--;


                    }

                     after(grammarAccess.getElementAccess().getArrayMethodAssignment_2()); 

                    }


                    }
                    break;
                case 4 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:981:6: ( ( rule__Element__FunctionAssignment_3 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:981:6: ( ( rule__Element__FunctionAssignment_3 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:982:1: ( rule__Element__FunctionAssignment_3 )
                    {
                     before(grammarAccess.getElementAccess().getFunctionAssignment_3()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:983:1: ( rule__Element__FunctionAssignment_3 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:983:2: rule__Element__FunctionAssignment_3
                    {
                    pushFollow(FOLLOW_rule__Element__FunctionAssignment_3_in_rule__Element__Alternatives2047);
                    rule__Element__FunctionAssignment_3();

                    state._fsp--;


                    }

                     after(grammarAccess.getElementAccess().getFunctionAssignment_3()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Element__Alternatives"


    // $ANTLR start "rule__VarDec__Alternatives"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:992:1: rule__VarDec__Alternatives : ( ( ( rule__VarDec__PrimitiveDecAssignment_0 ) ) | ( ( rule__VarDec__ArrayDecAssignment_1 ) ) );
    public final void rule__VarDec__Alternatives() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:996:1: ( ( ( rule__VarDec__PrimitiveDecAssignment_0 ) ) | ( ( rule__VarDec__ArrayDecAssignment_1 ) ) )
            int alt3=2;
            int LA3_0 = input.LA(1);

            if ( ((LA3_0>=11 && LA3_0<=13)) ) {
                alt3=1;
            }
            else if ( (LA3_0==25) ) {
                alt3=2;
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 3, 0, input);

                throw nvae;
            }
            switch (alt3) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:997:1: ( ( rule__VarDec__PrimitiveDecAssignment_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:997:1: ( ( rule__VarDec__PrimitiveDecAssignment_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:998:1: ( rule__VarDec__PrimitiveDecAssignment_0 )
                    {
                     before(grammarAccess.getVarDecAccess().getPrimitiveDecAssignment_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:999:1: ( rule__VarDec__PrimitiveDecAssignment_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:999:2: rule__VarDec__PrimitiveDecAssignment_0
                    {
                    pushFollow(FOLLOW_rule__VarDec__PrimitiveDecAssignment_0_in_rule__VarDec__Alternatives2080);
                    rule__VarDec__PrimitiveDecAssignment_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getVarDecAccess().getPrimitiveDecAssignment_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1003:6: ( ( rule__VarDec__ArrayDecAssignment_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1003:6: ( ( rule__VarDec__ArrayDecAssignment_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1004:1: ( rule__VarDec__ArrayDecAssignment_1 )
                    {
                     before(grammarAccess.getVarDecAccess().getArrayDecAssignment_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1005:1: ( rule__VarDec__ArrayDecAssignment_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1005:2: rule__VarDec__ArrayDecAssignment_1
                    {
                    pushFollow(FOLLOW_rule__VarDec__ArrayDecAssignment_1_in_rule__VarDec__Alternatives2098);
                    rule__VarDec__ArrayDecAssignment_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getVarDecAccess().getArrayDecAssignment_1()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__VarDec__Alternatives"


    // $ANTLR start "rule__PrimitiveDec__Alternatives"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1014:1: rule__PrimitiveDec__Alternatives : ( ( ( rule__PrimitiveDec__IntDecAssignment_0 ) ) | ( ( rule__PrimitiveDec__RealDecAssignment_1 ) ) | ( ( rule__PrimitiveDec__PartitionDecAssignment_2 ) ) );
    public final void rule__PrimitiveDec__Alternatives() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1018:1: ( ( ( rule__PrimitiveDec__IntDecAssignment_0 ) ) | ( ( rule__PrimitiveDec__RealDecAssignment_1 ) ) | ( ( rule__PrimitiveDec__PartitionDecAssignment_2 ) ) )
            int alt4=3;
            switch ( input.LA(1) ) {
            case 11:
                {
                alt4=1;
                }
                break;
            case 12:
                {
                alt4=2;
                }
                break;
            case 13:
                {
                alt4=3;
                }
                break;
            default:
                NoViableAltException nvae =
                    new NoViableAltException("", 4, 0, input);

                throw nvae;
            }

            switch (alt4) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1019:1: ( ( rule__PrimitiveDec__IntDecAssignment_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1019:1: ( ( rule__PrimitiveDec__IntDecAssignment_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1020:1: ( rule__PrimitiveDec__IntDecAssignment_0 )
                    {
                     before(grammarAccess.getPrimitiveDecAccess().getIntDecAssignment_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1021:1: ( rule__PrimitiveDec__IntDecAssignment_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1021:2: rule__PrimitiveDec__IntDecAssignment_0
                    {
                    pushFollow(FOLLOW_rule__PrimitiveDec__IntDecAssignment_0_in_rule__PrimitiveDec__Alternatives2131);
                    rule__PrimitiveDec__IntDecAssignment_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getPrimitiveDecAccess().getIntDecAssignment_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1025:6: ( ( rule__PrimitiveDec__RealDecAssignment_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1025:6: ( ( rule__PrimitiveDec__RealDecAssignment_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1026:1: ( rule__PrimitiveDec__RealDecAssignment_1 )
                    {
                     before(grammarAccess.getPrimitiveDecAccess().getRealDecAssignment_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1027:1: ( rule__PrimitiveDec__RealDecAssignment_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1027:2: rule__PrimitiveDec__RealDecAssignment_1
                    {
                    pushFollow(FOLLOW_rule__PrimitiveDec__RealDecAssignment_1_in_rule__PrimitiveDec__Alternatives2149);
                    rule__PrimitiveDec__RealDecAssignment_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getPrimitiveDecAccess().getRealDecAssignment_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1031:6: ( ( rule__PrimitiveDec__PartitionDecAssignment_2 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1031:6: ( ( rule__PrimitiveDec__PartitionDecAssignment_2 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1032:1: ( rule__PrimitiveDec__PartitionDecAssignment_2 )
                    {
                     before(grammarAccess.getPrimitiveDecAccess().getPartitionDecAssignment_2()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1033:1: ( rule__PrimitiveDec__PartitionDecAssignment_2 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1033:2: rule__PrimitiveDec__PartitionDecAssignment_2
                    {
                    pushFollow(FOLLOW_rule__PrimitiveDec__PartitionDecAssignment_2_in_rule__PrimitiveDec__Alternatives2167);
                    rule__PrimitiveDec__PartitionDecAssignment_2();

                    state._fsp--;


                    }

                     after(grammarAccess.getPrimitiveDecAccess().getPartitionDecAssignment_2()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PrimitiveDec__Alternatives"


    // $ANTLR start "rule__ArrayDec__TypeAlternatives_5_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1042:1: rule__ArrayDec__TypeAlternatives_5_0 : ( ( 'Int' ) | ( 'Real' ) | ( 'Partition' ) );
    public final void rule__ArrayDec__TypeAlternatives_5_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1046:1: ( ( 'Int' ) | ( 'Real' ) | ( 'Partition' ) )
            int alt5=3;
            switch ( input.LA(1) ) {
            case 11:
                {
                alt5=1;
                }
                break;
            case 12:
                {
                alt5=2;
                }
                break;
            case 13:
                {
                alt5=3;
                }
                break;
            default:
                NoViableAltException nvae =
                    new NoViableAltException("", 5, 0, input);

                throw nvae;
            }

            switch (alt5) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1047:1: ( 'Int' )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1047:1: ( 'Int' )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1048:1: 'Int'
                    {
                     before(grammarAccess.getArrayDecAccess().getTypeIntKeyword_5_0_0()); 
                    match(input,11,FOLLOW_11_in_rule__ArrayDec__TypeAlternatives_5_02201); 
                     after(grammarAccess.getArrayDecAccess().getTypeIntKeyword_5_0_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1055:6: ( 'Real' )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1055:6: ( 'Real' )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1056:1: 'Real'
                    {
                     before(grammarAccess.getArrayDecAccess().getTypeRealKeyword_5_0_1()); 
                    match(input,12,FOLLOW_12_in_rule__ArrayDec__TypeAlternatives_5_02221); 
                     after(grammarAccess.getArrayDecAccess().getTypeRealKeyword_5_0_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1063:6: ( 'Partition' )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1063:6: ( 'Partition' )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1064:1: 'Partition'
                    {
                     before(grammarAccess.getArrayDecAccess().getTypePartitionKeyword_5_0_2()); 
                    match(input,13,FOLLOW_13_in_rule__ArrayDec__TypeAlternatives_5_02241); 
                     after(grammarAccess.getArrayDecAccess().getTypePartitionKeyword_5_0_2()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__TypeAlternatives_5_0"


    // $ANTLR start "rule__Assignment__Alternatives_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1076:1: rule__Assignment__Alternatives_0 : ( ( ( rule__Assignment__DecAssignment_0_0 ) ) | ( ( rule__Assignment__Group_0_1__0 ) ) | ( ( rule__Assignment__ArrayElementAssignment_0_2 ) ) );
    public final void rule__Assignment__Alternatives_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1080:1: ( ( ( rule__Assignment__DecAssignment_0_0 ) ) | ( ( rule__Assignment__Group_0_1__0 ) ) | ( ( rule__Assignment__ArrayElementAssignment_0_2 ) ) )
            int alt6=3;
            int LA6_0 = input.LA(1);

            if ( ((LA6_0>=11 && LA6_0<=13)||LA6_0==25) ) {
                alt6=1;
            }
            else if ( (LA6_0==RULE_ID) ) {
                int LA6_2 = input.LA(2);

                if ( (LA6_2==14||LA6_2==17) ) {
                    alt6=2;
                }
                else if ( (LA6_2==23) ) {
                    alt6=3;
                }
                else {
                    NoViableAltException nvae =
                        new NoViableAltException("", 6, 2, input);

                    throw nvae;
                }
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 6, 0, input);

                throw nvae;
            }
            switch (alt6) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1081:1: ( ( rule__Assignment__DecAssignment_0_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1081:1: ( ( rule__Assignment__DecAssignment_0_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1082:1: ( rule__Assignment__DecAssignment_0_0 )
                    {
                     before(grammarAccess.getAssignmentAccess().getDecAssignment_0_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1083:1: ( rule__Assignment__DecAssignment_0_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1083:2: rule__Assignment__DecAssignment_0_0
                    {
                    pushFollow(FOLLOW_rule__Assignment__DecAssignment_0_0_in_rule__Assignment__Alternatives_02275);
                    rule__Assignment__DecAssignment_0_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getAssignmentAccess().getDecAssignment_0_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1087:6: ( ( rule__Assignment__Group_0_1__0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1087:6: ( ( rule__Assignment__Group_0_1__0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1088:1: ( rule__Assignment__Group_0_1__0 )
                    {
                     before(grammarAccess.getAssignmentAccess().getGroup_0_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1089:1: ( rule__Assignment__Group_0_1__0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1089:2: rule__Assignment__Group_0_1__0
                    {
                    pushFollow(FOLLOW_rule__Assignment__Group_0_1__0_in_rule__Assignment__Alternatives_02293);
                    rule__Assignment__Group_0_1__0();

                    state._fsp--;


                    }

                     after(grammarAccess.getAssignmentAccess().getGroup_0_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1093:6: ( ( rule__Assignment__ArrayElementAssignment_0_2 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1093:6: ( ( rule__Assignment__ArrayElementAssignment_0_2 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1094:1: ( rule__Assignment__ArrayElementAssignment_0_2 )
                    {
                     before(grammarAccess.getAssignmentAccess().getArrayElementAssignment_0_2()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1095:1: ( rule__Assignment__ArrayElementAssignment_0_2 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1095:2: rule__Assignment__ArrayElementAssignment_0_2
                    {
                    pushFollow(FOLLOW_rule__Assignment__ArrayElementAssignment_0_2_in_rule__Assignment__Alternatives_02311);
                    rule__Assignment__ArrayElementAssignment_0_2();

                    state._fsp--;


                    }

                     after(grammarAccess.getAssignmentAccess().getArrayElementAssignment_0_2()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Assignment__Alternatives_0"


    // $ANTLR start "rule__Assignment__Alternatives_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1104:1: rule__Assignment__Alternatives_2 : ( ( ( rule__Assignment__CalcCRAssignment_2_0 ) ) | ( ( rule__Assignment__CalcMeanAssignment_2_1 ) ) | ( ( rule__Assignment__NumberAssignment_2_2 ) ) | ( ( rule__Assignment__ArchiveAssignment_2_3 ) ) | ( ( rule__Assignment__VariableAssignment_2_4 ) ) | ( ( rule__Assignment__AssignedAEAssignment_2_5 ) ) );
    public final void rule__Assignment__Alternatives_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1108:1: ( ( ( rule__Assignment__CalcCRAssignment_2_0 ) ) | ( ( rule__Assignment__CalcMeanAssignment_2_1 ) ) | ( ( rule__Assignment__NumberAssignment_2_2 ) ) | ( ( rule__Assignment__ArchiveAssignment_2_3 ) ) | ( ( rule__Assignment__VariableAssignment_2_4 ) ) | ( ( rule__Assignment__AssignedAEAssignment_2_5 ) ) )
            int alt7=6;
            switch ( input.LA(1) ) {
            case 32:
                {
                alt7=1;
                }
                break;
            case 33:
                {
                alt7=2;
                }
                break;
            case RULE_INT:
                {
                alt7=3;
                }
                break;
            case 37:
                {
                alt7=4;
                }
                break;
            case RULE_ID:
                {
                switch ( input.LA(2) ) {
                case 18:
                case 38:
                    {
                    alt7=4;
                    }
                    break;
                case 23:
                    {
                    alt7=6;
                    }
                    break;
                case EOF:
                case RULE_ID:
                case 11:
                case 12:
                case 13:
                case 22:
                case 25:
                case 29:
                case 30:
                case 31:
                case 32:
                case 33:
                case 34:
                case 35:
                    {
                    alt7=5;
                    }
                    break;
                default:
                    NoViableAltException nvae =
                        new NoViableAltException("", 7, 5, input);

                    throw nvae;
                }

                }
                break;
            default:
                NoViableAltException nvae =
                    new NoViableAltException("", 7, 0, input);

                throw nvae;
            }

            switch (alt7) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1109:1: ( ( rule__Assignment__CalcCRAssignment_2_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1109:1: ( ( rule__Assignment__CalcCRAssignment_2_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1110:1: ( rule__Assignment__CalcCRAssignment_2_0 )
                    {
                     before(grammarAccess.getAssignmentAccess().getCalcCRAssignment_2_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1111:1: ( rule__Assignment__CalcCRAssignment_2_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1111:2: rule__Assignment__CalcCRAssignment_2_0
                    {
                    pushFollow(FOLLOW_rule__Assignment__CalcCRAssignment_2_0_in_rule__Assignment__Alternatives_22344);
                    rule__Assignment__CalcCRAssignment_2_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getAssignmentAccess().getCalcCRAssignment_2_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1115:6: ( ( rule__Assignment__CalcMeanAssignment_2_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1115:6: ( ( rule__Assignment__CalcMeanAssignment_2_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1116:1: ( rule__Assignment__CalcMeanAssignment_2_1 )
                    {
                     before(grammarAccess.getAssignmentAccess().getCalcMeanAssignment_2_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1117:1: ( rule__Assignment__CalcMeanAssignment_2_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1117:2: rule__Assignment__CalcMeanAssignment_2_1
                    {
                    pushFollow(FOLLOW_rule__Assignment__CalcMeanAssignment_2_1_in_rule__Assignment__Alternatives_22362);
                    rule__Assignment__CalcMeanAssignment_2_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getAssignmentAccess().getCalcMeanAssignment_2_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1121:6: ( ( rule__Assignment__NumberAssignment_2_2 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1121:6: ( ( rule__Assignment__NumberAssignment_2_2 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1122:1: ( rule__Assignment__NumberAssignment_2_2 )
                    {
                     before(grammarAccess.getAssignmentAccess().getNumberAssignment_2_2()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1123:1: ( rule__Assignment__NumberAssignment_2_2 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1123:2: rule__Assignment__NumberAssignment_2_2
                    {
                    pushFollow(FOLLOW_rule__Assignment__NumberAssignment_2_2_in_rule__Assignment__Alternatives_22380);
                    rule__Assignment__NumberAssignment_2_2();

                    state._fsp--;


                    }

                     after(grammarAccess.getAssignmentAccess().getNumberAssignment_2_2()); 

                    }


                    }
                    break;
                case 4 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1127:6: ( ( rule__Assignment__ArchiveAssignment_2_3 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1127:6: ( ( rule__Assignment__ArchiveAssignment_2_3 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1128:1: ( rule__Assignment__ArchiveAssignment_2_3 )
                    {
                     before(grammarAccess.getAssignmentAccess().getArchiveAssignment_2_3()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1129:1: ( rule__Assignment__ArchiveAssignment_2_3 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1129:2: rule__Assignment__ArchiveAssignment_2_3
                    {
                    pushFollow(FOLLOW_rule__Assignment__ArchiveAssignment_2_3_in_rule__Assignment__Alternatives_22398);
                    rule__Assignment__ArchiveAssignment_2_3();

                    state._fsp--;


                    }

                     after(grammarAccess.getAssignmentAccess().getArchiveAssignment_2_3()); 

                    }


                    }
                    break;
                case 5 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1133:6: ( ( rule__Assignment__VariableAssignment_2_4 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1133:6: ( ( rule__Assignment__VariableAssignment_2_4 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1134:1: ( rule__Assignment__VariableAssignment_2_4 )
                    {
                     before(grammarAccess.getAssignmentAccess().getVariableAssignment_2_4()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1135:1: ( rule__Assignment__VariableAssignment_2_4 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1135:2: rule__Assignment__VariableAssignment_2_4
                    {
                    pushFollow(FOLLOW_rule__Assignment__VariableAssignment_2_4_in_rule__Assignment__Alternatives_22416);
                    rule__Assignment__VariableAssignment_2_4();

                    state._fsp--;


                    }

                     after(grammarAccess.getAssignmentAccess().getVariableAssignment_2_4()); 

                    }


                    }
                    break;
                case 6 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1139:6: ( ( rule__Assignment__AssignedAEAssignment_2_5 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1139:6: ( ( rule__Assignment__AssignedAEAssignment_2_5 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1140:1: ( rule__Assignment__AssignedAEAssignment_2_5 )
                    {
                     before(grammarAccess.getAssignmentAccess().getAssignedAEAssignment_2_5()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1141:1: ( rule__Assignment__AssignedAEAssignment_2_5 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1141:2: rule__Assignment__AssignedAEAssignment_2_5
                    {
                    pushFollow(FOLLOW_rule__Assignment__AssignedAEAssignment_2_5_in_rule__Assignment__Alternatives_22434);
                    rule__Assignment__AssignedAEAssignment_2_5();

                    state._fsp--;


                    }

                     after(grammarAccess.getAssignmentAccess().getAssignedAEAssignment_2_5()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Assignment__Alternatives_2"


    // $ANTLR start "rule__ArrayMethod__Alternatives"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1150:1: rule__ArrayMethod__Alternatives : ( ( ( rule__ArrayMethod__SizeAssignment_0 ) ) | ( ( rule__ArrayMethod__AddAssignment_1 ) ) | ( ( rule__ArrayMethod__DeleteAssignment_2 ) ) );
    public final void rule__ArrayMethod__Alternatives() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1154:1: ( ( ( rule__ArrayMethod__SizeAssignment_0 ) ) | ( ( rule__ArrayMethod__AddAssignment_1 ) ) | ( ( rule__ArrayMethod__DeleteAssignment_2 ) ) )
            int alt8=3;
            alt8 = dfa8.predict(input);
            switch (alt8) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1155:1: ( ( rule__ArrayMethod__SizeAssignment_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1155:1: ( ( rule__ArrayMethod__SizeAssignment_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1156:1: ( rule__ArrayMethod__SizeAssignment_0 )
                    {
                     before(grammarAccess.getArrayMethodAccess().getSizeAssignment_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1157:1: ( rule__ArrayMethod__SizeAssignment_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1157:2: rule__ArrayMethod__SizeAssignment_0
                    {
                    pushFollow(FOLLOW_rule__ArrayMethod__SizeAssignment_0_in_rule__ArrayMethod__Alternatives2467);
                    rule__ArrayMethod__SizeAssignment_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getArrayMethodAccess().getSizeAssignment_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1161:6: ( ( rule__ArrayMethod__AddAssignment_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1161:6: ( ( rule__ArrayMethod__AddAssignment_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1162:1: ( rule__ArrayMethod__AddAssignment_1 )
                    {
                     before(grammarAccess.getArrayMethodAccess().getAddAssignment_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1163:1: ( rule__ArrayMethod__AddAssignment_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1163:2: rule__ArrayMethod__AddAssignment_1
                    {
                    pushFollow(FOLLOW_rule__ArrayMethod__AddAssignment_1_in_rule__ArrayMethod__Alternatives2485);
                    rule__ArrayMethod__AddAssignment_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getArrayMethodAccess().getAddAssignment_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1167:6: ( ( rule__ArrayMethod__DeleteAssignment_2 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1167:6: ( ( rule__ArrayMethod__DeleteAssignment_2 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1168:1: ( rule__ArrayMethod__DeleteAssignment_2 )
                    {
                     before(grammarAccess.getArrayMethodAccess().getDeleteAssignment_2()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1169:1: ( rule__ArrayMethod__DeleteAssignment_2 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1169:2: rule__ArrayMethod__DeleteAssignment_2
                    {
                    pushFollow(FOLLOW_rule__ArrayMethod__DeleteAssignment_2_in_rule__ArrayMethod__Alternatives2503);
                    rule__ArrayMethod__DeleteAssignment_2();

                    state._fsp--;


                    }

                     after(grammarAccess.getArrayMethodAccess().getDeleteAssignment_2()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayMethod__Alternatives"


    // $ANTLR start "rule__Size__Alternatives_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1178:1: rule__Size__Alternatives_0 : ( ( ( rule__Size__ArrayAssignment_0_0 ) ) | ( ( rule__Size__ArrayElementAssignment_0_1 ) ) );
    public final void rule__Size__Alternatives_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1182:1: ( ( ( rule__Size__ArrayAssignment_0_0 ) ) | ( ( rule__Size__ArrayElementAssignment_0_1 ) ) )
            int alt9=2;
            int LA9_0 = input.LA(1);

            if ( (LA9_0==RULE_ID) ) {
                int LA9_1 = input.LA(2);

                if ( (LA9_1==23) ) {
                    alt9=2;
                }
                else if ( (LA9_1==18) ) {
                    alt9=1;
                }
                else {
                    NoViableAltException nvae =
                        new NoViableAltException("", 9, 1, input);

                    throw nvae;
                }
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 9, 0, input);

                throw nvae;
            }
            switch (alt9) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1183:1: ( ( rule__Size__ArrayAssignment_0_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1183:1: ( ( rule__Size__ArrayAssignment_0_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1184:1: ( rule__Size__ArrayAssignment_0_0 )
                    {
                     before(grammarAccess.getSizeAccess().getArrayAssignment_0_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1185:1: ( rule__Size__ArrayAssignment_0_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1185:2: rule__Size__ArrayAssignment_0_0
                    {
                    pushFollow(FOLLOW_rule__Size__ArrayAssignment_0_0_in_rule__Size__Alternatives_02536);
                    rule__Size__ArrayAssignment_0_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getSizeAccess().getArrayAssignment_0_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1189:6: ( ( rule__Size__ArrayElementAssignment_0_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1189:6: ( ( rule__Size__ArrayElementAssignment_0_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1190:1: ( rule__Size__ArrayElementAssignment_0_1 )
                    {
                     before(grammarAccess.getSizeAccess().getArrayElementAssignment_0_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1191:1: ( rule__Size__ArrayElementAssignment_0_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1191:2: rule__Size__ArrayElementAssignment_0_1
                    {
                    pushFollow(FOLLOW_rule__Size__ArrayElementAssignment_0_1_in_rule__Size__Alternatives_02554);
                    rule__Size__ArrayElementAssignment_0_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getSizeAccess().getArrayElementAssignment_0_1()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Size__Alternatives_0"


    // $ANTLR start "rule__Add__Alternatives_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1200:1: rule__Add__Alternatives_0 : ( ( ( rule__Add__ArrayAssignment_0_0 ) ) | ( ( rule__Add__ArrayElementAssignment_0_1 ) ) );
    public final void rule__Add__Alternatives_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1204:1: ( ( ( rule__Add__ArrayAssignment_0_0 ) ) | ( ( rule__Add__ArrayElementAssignment_0_1 ) ) )
            int alt10=2;
            int LA10_0 = input.LA(1);

            if ( (LA10_0==RULE_ID) ) {
                int LA10_1 = input.LA(2);

                if ( (LA10_1==23) ) {
                    alt10=2;
                }
                else if ( (LA10_1==18) ) {
                    alt10=1;
                }
                else {
                    NoViableAltException nvae =
                        new NoViableAltException("", 10, 1, input);

                    throw nvae;
                }
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 10, 0, input);

                throw nvae;
            }
            switch (alt10) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1205:1: ( ( rule__Add__ArrayAssignment_0_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1205:1: ( ( rule__Add__ArrayAssignment_0_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1206:1: ( rule__Add__ArrayAssignment_0_0 )
                    {
                     before(grammarAccess.getAddAccess().getArrayAssignment_0_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1207:1: ( rule__Add__ArrayAssignment_0_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1207:2: rule__Add__ArrayAssignment_0_0
                    {
                    pushFollow(FOLLOW_rule__Add__ArrayAssignment_0_0_in_rule__Add__Alternatives_02587);
                    rule__Add__ArrayAssignment_0_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getAddAccess().getArrayAssignment_0_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1211:6: ( ( rule__Add__ArrayElementAssignment_0_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1211:6: ( ( rule__Add__ArrayElementAssignment_0_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1212:1: ( rule__Add__ArrayElementAssignment_0_1 )
                    {
                     before(grammarAccess.getAddAccess().getArrayElementAssignment_0_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1213:1: ( rule__Add__ArrayElementAssignment_0_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1213:2: rule__Add__ArrayElementAssignment_0_1
                    {
                    pushFollow(FOLLOW_rule__Add__ArrayElementAssignment_0_1_in_rule__Add__Alternatives_02605);
                    rule__Add__ArrayElementAssignment_0_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getAddAccess().getArrayElementAssignment_0_1()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__Alternatives_0"


    // $ANTLR start "rule__Add__Alternatives_4"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1222:1: rule__Add__Alternatives_4 : ( ( ( rule__Add__NumParamsAssignment_4_0 ) ) | ( ( rule__Add__VarParamsAssignment_4_1 ) ) | ( ( rule__Add__AeParamsAssignment_4_2 ) ) | ( ( rule__Add__ArchiveAssignment_4_3 ) ) | ( ( rule__Add__SizesAssignment_4_4 ) ) | ( ( rule__Add__CalcCRsAssignment_4_5 ) ) | ( ( rule__Add__CalcMeansAssignment_4_6 ) ) );
    public final void rule__Add__Alternatives_4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1226:1: ( ( ( rule__Add__NumParamsAssignment_4_0 ) ) | ( ( rule__Add__VarParamsAssignment_4_1 ) ) | ( ( rule__Add__AeParamsAssignment_4_2 ) ) | ( ( rule__Add__ArchiveAssignment_4_3 ) ) | ( ( rule__Add__SizesAssignment_4_4 ) ) | ( ( rule__Add__CalcCRsAssignment_4_5 ) ) | ( ( rule__Add__CalcMeansAssignment_4_6 ) ) )
            int alt11=7;
            alt11 = dfa11.predict(input);
            switch (alt11) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1227:1: ( ( rule__Add__NumParamsAssignment_4_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1227:1: ( ( rule__Add__NumParamsAssignment_4_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1228:1: ( rule__Add__NumParamsAssignment_4_0 )
                    {
                     before(grammarAccess.getAddAccess().getNumParamsAssignment_4_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1229:1: ( rule__Add__NumParamsAssignment_4_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1229:2: rule__Add__NumParamsAssignment_4_0
                    {
                    pushFollow(FOLLOW_rule__Add__NumParamsAssignment_4_0_in_rule__Add__Alternatives_42638);
                    rule__Add__NumParamsAssignment_4_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getAddAccess().getNumParamsAssignment_4_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1233:6: ( ( rule__Add__VarParamsAssignment_4_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1233:6: ( ( rule__Add__VarParamsAssignment_4_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1234:1: ( rule__Add__VarParamsAssignment_4_1 )
                    {
                     before(grammarAccess.getAddAccess().getVarParamsAssignment_4_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1235:1: ( rule__Add__VarParamsAssignment_4_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1235:2: rule__Add__VarParamsAssignment_4_1
                    {
                    pushFollow(FOLLOW_rule__Add__VarParamsAssignment_4_1_in_rule__Add__Alternatives_42656);
                    rule__Add__VarParamsAssignment_4_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getAddAccess().getVarParamsAssignment_4_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1239:6: ( ( rule__Add__AeParamsAssignment_4_2 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1239:6: ( ( rule__Add__AeParamsAssignment_4_2 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1240:1: ( rule__Add__AeParamsAssignment_4_2 )
                    {
                     before(grammarAccess.getAddAccess().getAeParamsAssignment_4_2()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1241:1: ( rule__Add__AeParamsAssignment_4_2 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1241:2: rule__Add__AeParamsAssignment_4_2
                    {
                    pushFollow(FOLLOW_rule__Add__AeParamsAssignment_4_2_in_rule__Add__Alternatives_42674);
                    rule__Add__AeParamsAssignment_4_2();

                    state._fsp--;


                    }

                     after(grammarAccess.getAddAccess().getAeParamsAssignment_4_2()); 

                    }


                    }
                    break;
                case 4 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1245:6: ( ( rule__Add__ArchiveAssignment_4_3 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1245:6: ( ( rule__Add__ArchiveAssignment_4_3 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1246:1: ( rule__Add__ArchiveAssignment_4_3 )
                    {
                     before(grammarAccess.getAddAccess().getArchiveAssignment_4_3()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1247:1: ( rule__Add__ArchiveAssignment_4_3 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1247:2: rule__Add__ArchiveAssignment_4_3
                    {
                    pushFollow(FOLLOW_rule__Add__ArchiveAssignment_4_3_in_rule__Add__Alternatives_42692);
                    rule__Add__ArchiveAssignment_4_3();

                    state._fsp--;


                    }

                     after(grammarAccess.getAddAccess().getArchiveAssignment_4_3()); 

                    }


                    }
                    break;
                case 5 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1251:6: ( ( rule__Add__SizesAssignment_4_4 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1251:6: ( ( rule__Add__SizesAssignment_4_4 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1252:1: ( rule__Add__SizesAssignment_4_4 )
                    {
                     before(grammarAccess.getAddAccess().getSizesAssignment_4_4()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1253:1: ( rule__Add__SizesAssignment_4_4 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1253:2: rule__Add__SizesAssignment_4_4
                    {
                    pushFollow(FOLLOW_rule__Add__SizesAssignment_4_4_in_rule__Add__Alternatives_42710);
                    rule__Add__SizesAssignment_4_4();

                    state._fsp--;


                    }

                     after(grammarAccess.getAddAccess().getSizesAssignment_4_4()); 

                    }


                    }
                    break;
                case 6 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1257:6: ( ( rule__Add__CalcCRsAssignment_4_5 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1257:6: ( ( rule__Add__CalcCRsAssignment_4_5 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1258:1: ( rule__Add__CalcCRsAssignment_4_5 )
                    {
                     before(grammarAccess.getAddAccess().getCalcCRsAssignment_4_5()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1259:1: ( rule__Add__CalcCRsAssignment_4_5 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1259:2: rule__Add__CalcCRsAssignment_4_5
                    {
                    pushFollow(FOLLOW_rule__Add__CalcCRsAssignment_4_5_in_rule__Add__Alternatives_42728);
                    rule__Add__CalcCRsAssignment_4_5();

                    state._fsp--;


                    }

                     after(grammarAccess.getAddAccess().getCalcCRsAssignment_4_5()); 

                    }


                    }
                    break;
                case 7 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1263:6: ( ( rule__Add__CalcMeansAssignment_4_6 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1263:6: ( ( rule__Add__CalcMeansAssignment_4_6 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1264:1: ( rule__Add__CalcMeansAssignment_4_6 )
                    {
                     before(grammarAccess.getAddAccess().getCalcMeansAssignment_4_6()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1265:1: ( rule__Add__CalcMeansAssignment_4_6 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1265:2: rule__Add__CalcMeansAssignment_4_6
                    {
                    pushFollow(FOLLOW_rule__Add__CalcMeansAssignment_4_6_in_rule__Add__Alternatives_42746);
                    rule__Add__CalcMeansAssignment_4_6();

                    state._fsp--;


                    }

                     after(grammarAccess.getAddAccess().getCalcMeansAssignment_4_6()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__Alternatives_4"


    // $ANTLR start "rule__Add__Alternatives_5_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1274:1: rule__Add__Alternatives_5_1 : ( ( ( rule__Add__NumParamsAssignment_5_1_0 ) ) | ( ( rule__Add__VarParamsAssignment_5_1_1 ) ) | ( ( rule__Add__AeParamsAssignment_5_1_2 ) ) | ( ( rule__Add__ArchiveAssignment_5_1_3 ) ) | ( ( rule__Add__SizesAssignment_5_1_4 ) ) | ( ( rule__Add__CalcCRsAssignment_5_1_5 ) ) | ( ( rule__Add__CalcMeansAssignment_5_1_6 ) ) );
    public final void rule__Add__Alternatives_5_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1278:1: ( ( ( rule__Add__NumParamsAssignment_5_1_0 ) ) | ( ( rule__Add__VarParamsAssignment_5_1_1 ) ) | ( ( rule__Add__AeParamsAssignment_5_1_2 ) ) | ( ( rule__Add__ArchiveAssignment_5_1_3 ) ) | ( ( rule__Add__SizesAssignment_5_1_4 ) ) | ( ( rule__Add__CalcCRsAssignment_5_1_5 ) ) | ( ( rule__Add__CalcMeansAssignment_5_1_6 ) ) )
            int alt12=7;
            alt12 = dfa12.predict(input);
            switch (alt12) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1279:1: ( ( rule__Add__NumParamsAssignment_5_1_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1279:1: ( ( rule__Add__NumParamsAssignment_5_1_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1280:1: ( rule__Add__NumParamsAssignment_5_1_0 )
                    {
                     before(grammarAccess.getAddAccess().getNumParamsAssignment_5_1_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1281:1: ( rule__Add__NumParamsAssignment_5_1_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1281:2: rule__Add__NumParamsAssignment_5_1_0
                    {
                    pushFollow(FOLLOW_rule__Add__NumParamsAssignment_5_1_0_in_rule__Add__Alternatives_5_12779);
                    rule__Add__NumParamsAssignment_5_1_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getAddAccess().getNumParamsAssignment_5_1_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1285:6: ( ( rule__Add__VarParamsAssignment_5_1_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1285:6: ( ( rule__Add__VarParamsAssignment_5_1_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1286:1: ( rule__Add__VarParamsAssignment_5_1_1 )
                    {
                     before(grammarAccess.getAddAccess().getVarParamsAssignment_5_1_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1287:1: ( rule__Add__VarParamsAssignment_5_1_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1287:2: rule__Add__VarParamsAssignment_5_1_1
                    {
                    pushFollow(FOLLOW_rule__Add__VarParamsAssignment_5_1_1_in_rule__Add__Alternatives_5_12797);
                    rule__Add__VarParamsAssignment_5_1_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getAddAccess().getVarParamsAssignment_5_1_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1291:6: ( ( rule__Add__AeParamsAssignment_5_1_2 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1291:6: ( ( rule__Add__AeParamsAssignment_5_1_2 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1292:1: ( rule__Add__AeParamsAssignment_5_1_2 )
                    {
                     before(grammarAccess.getAddAccess().getAeParamsAssignment_5_1_2()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1293:1: ( rule__Add__AeParamsAssignment_5_1_2 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1293:2: rule__Add__AeParamsAssignment_5_1_2
                    {
                    pushFollow(FOLLOW_rule__Add__AeParamsAssignment_5_1_2_in_rule__Add__Alternatives_5_12815);
                    rule__Add__AeParamsAssignment_5_1_2();

                    state._fsp--;


                    }

                     after(grammarAccess.getAddAccess().getAeParamsAssignment_5_1_2()); 

                    }


                    }
                    break;
                case 4 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1297:6: ( ( rule__Add__ArchiveAssignment_5_1_3 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1297:6: ( ( rule__Add__ArchiveAssignment_5_1_3 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1298:1: ( rule__Add__ArchiveAssignment_5_1_3 )
                    {
                     before(grammarAccess.getAddAccess().getArchiveAssignment_5_1_3()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1299:1: ( rule__Add__ArchiveAssignment_5_1_3 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1299:2: rule__Add__ArchiveAssignment_5_1_3
                    {
                    pushFollow(FOLLOW_rule__Add__ArchiveAssignment_5_1_3_in_rule__Add__Alternatives_5_12833);
                    rule__Add__ArchiveAssignment_5_1_3();

                    state._fsp--;


                    }

                     after(grammarAccess.getAddAccess().getArchiveAssignment_5_1_3()); 

                    }


                    }
                    break;
                case 5 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1303:6: ( ( rule__Add__SizesAssignment_5_1_4 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1303:6: ( ( rule__Add__SizesAssignment_5_1_4 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1304:1: ( rule__Add__SizesAssignment_5_1_4 )
                    {
                     before(grammarAccess.getAddAccess().getSizesAssignment_5_1_4()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1305:1: ( rule__Add__SizesAssignment_5_1_4 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1305:2: rule__Add__SizesAssignment_5_1_4
                    {
                    pushFollow(FOLLOW_rule__Add__SizesAssignment_5_1_4_in_rule__Add__Alternatives_5_12851);
                    rule__Add__SizesAssignment_5_1_4();

                    state._fsp--;


                    }

                     after(grammarAccess.getAddAccess().getSizesAssignment_5_1_4()); 

                    }


                    }
                    break;
                case 6 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1309:6: ( ( rule__Add__CalcCRsAssignment_5_1_5 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1309:6: ( ( rule__Add__CalcCRsAssignment_5_1_5 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1310:1: ( rule__Add__CalcCRsAssignment_5_1_5 )
                    {
                     before(grammarAccess.getAddAccess().getCalcCRsAssignment_5_1_5()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1311:1: ( rule__Add__CalcCRsAssignment_5_1_5 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1311:2: rule__Add__CalcCRsAssignment_5_1_5
                    {
                    pushFollow(FOLLOW_rule__Add__CalcCRsAssignment_5_1_5_in_rule__Add__Alternatives_5_12869);
                    rule__Add__CalcCRsAssignment_5_1_5();

                    state._fsp--;


                    }

                     after(grammarAccess.getAddAccess().getCalcCRsAssignment_5_1_5()); 

                    }


                    }
                    break;
                case 7 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1315:6: ( ( rule__Add__CalcMeansAssignment_5_1_6 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1315:6: ( ( rule__Add__CalcMeansAssignment_5_1_6 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1316:1: ( rule__Add__CalcMeansAssignment_5_1_6 )
                    {
                     before(grammarAccess.getAddAccess().getCalcMeansAssignment_5_1_6()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1317:1: ( rule__Add__CalcMeansAssignment_5_1_6 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1317:2: rule__Add__CalcMeansAssignment_5_1_6
                    {
                    pushFollow(FOLLOW_rule__Add__CalcMeansAssignment_5_1_6_in_rule__Add__Alternatives_5_12887);
                    rule__Add__CalcMeansAssignment_5_1_6();

                    state._fsp--;


                    }

                     after(grammarAccess.getAddAccess().getCalcMeansAssignment_5_1_6()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__Alternatives_5_1"


    // $ANTLR start "rule__Delete__Alternatives"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1326:1: rule__Delete__Alternatives : ( ( ( rule__Delete__Group_0__0 ) ) | ( ( rule__Delete__Group_1__0 ) ) );
    public final void rule__Delete__Alternatives() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1330:1: ( ( ( rule__Delete__Group_0__0 ) ) | ( ( rule__Delete__Group_1__0 ) ) )
            int alt13=2;
            alt13 = dfa13.predict(input);
            switch (alt13) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1331:1: ( ( rule__Delete__Group_0__0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1331:1: ( ( rule__Delete__Group_0__0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1332:1: ( rule__Delete__Group_0__0 )
                    {
                     before(grammarAccess.getDeleteAccess().getGroup_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1333:1: ( rule__Delete__Group_0__0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1333:2: rule__Delete__Group_0__0
                    {
                    pushFollow(FOLLOW_rule__Delete__Group_0__0_in_rule__Delete__Alternatives2920);
                    rule__Delete__Group_0__0();

                    state._fsp--;


                    }

                     after(grammarAccess.getDeleteAccess().getGroup_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1337:6: ( ( rule__Delete__Group_1__0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1337:6: ( ( rule__Delete__Group_1__0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1338:1: ( rule__Delete__Group_1__0 )
                    {
                     before(grammarAccess.getDeleteAccess().getGroup_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1339:1: ( rule__Delete__Group_1__0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1339:2: rule__Delete__Group_1__0
                    {
                    pushFollow(FOLLOW_rule__Delete__Group_1__0_in_rule__Delete__Alternatives2938);
                    rule__Delete__Group_1__0();

                    state._fsp--;


                    }

                     after(grammarAccess.getDeleteAccess().getGroup_1()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Alternatives"


    // $ANTLR start "rule__Delete__Alternatives_0_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1348:1: rule__Delete__Alternatives_0_0 : ( ( ( rule__Delete__ArrayAssignment_0_0_0 ) ) | ( ( rule__Delete__ArrayElementAssignment_0_0_1 ) ) );
    public final void rule__Delete__Alternatives_0_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1352:1: ( ( ( rule__Delete__ArrayAssignment_0_0_0 ) ) | ( ( rule__Delete__ArrayElementAssignment_0_0_1 ) ) )
            int alt14=2;
            int LA14_0 = input.LA(1);

            if ( (LA14_0==RULE_ID) ) {
                int LA14_1 = input.LA(2);

                if ( (LA14_1==18) ) {
                    alt14=1;
                }
                else if ( (LA14_1==23) ) {
                    alt14=2;
                }
                else {
                    NoViableAltException nvae =
                        new NoViableAltException("", 14, 1, input);

                    throw nvae;
                }
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 14, 0, input);

                throw nvae;
            }
            switch (alt14) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1353:1: ( ( rule__Delete__ArrayAssignment_0_0_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1353:1: ( ( rule__Delete__ArrayAssignment_0_0_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1354:1: ( rule__Delete__ArrayAssignment_0_0_0 )
                    {
                     before(grammarAccess.getDeleteAccess().getArrayAssignment_0_0_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1355:1: ( rule__Delete__ArrayAssignment_0_0_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1355:2: rule__Delete__ArrayAssignment_0_0_0
                    {
                    pushFollow(FOLLOW_rule__Delete__ArrayAssignment_0_0_0_in_rule__Delete__Alternatives_0_02971);
                    rule__Delete__ArrayAssignment_0_0_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getDeleteAccess().getArrayAssignment_0_0_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1359:6: ( ( rule__Delete__ArrayElementAssignment_0_0_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1359:6: ( ( rule__Delete__ArrayElementAssignment_0_0_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1360:1: ( rule__Delete__ArrayElementAssignment_0_0_1 )
                    {
                     before(grammarAccess.getDeleteAccess().getArrayElementAssignment_0_0_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1361:1: ( rule__Delete__ArrayElementAssignment_0_0_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1361:2: rule__Delete__ArrayElementAssignment_0_0_1
                    {
                    pushFollow(FOLLOW_rule__Delete__ArrayElementAssignment_0_0_1_in_rule__Delete__Alternatives_0_02989);
                    rule__Delete__ArrayElementAssignment_0_0_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getDeleteAccess().getArrayElementAssignment_0_0_1()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Alternatives_0_0"


    // $ANTLR start "rule__Delete__Alternatives_0_4"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1370:1: rule__Delete__Alternatives_0_4 : ( ( ( rule__Delete__DelElementsAssignment_0_4_0 ) ) | ( ( rule__Delete__DelVarsAssignment_0_4_1 ) ) | ( ( rule__Delete__DelArraysAssignment_0_4_2 ) ) | ( ( rule__Delete__SizeAssignment_0_4_3 ) ) );
    public final void rule__Delete__Alternatives_0_4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1374:1: ( ( ( rule__Delete__DelElementsAssignment_0_4_0 ) ) | ( ( rule__Delete__DelVarsAssignment_0_4_1 ) ) | ( ( rule__Delete__DelArraysAssignment_0_4_2 ) ) | ( ( rule__Delete__SizeAssignment_0_4_3 ) ) )
            int alt15=4;
            alt15 = dfa15.predict(input);
            switch (alt15) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1375:1: ( ( rule__Delete__DelElementsAssignment_0_4_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1375:1: ( ( rule__Delete__DelElementsAssignment_0_4_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1376:1: ( rule__Delete__DelElementsAssignment_0_4_0 )
                    {
                     before(grammarAccess.getDeleteAccess().getDelElementsAssignment_0_4_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1377:1: ( rule__Delete__DelElementsAssignment_0_4_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1377:2: rule__Delete__DelElementsAssignment_0_4_0
                    {
                    pushFollow(FOLLOW_rule__Delete__DelElementsAssignment_0_4_0_in_rule__Delete__Alternatives_0_43022);
                    rule__Delete__DelElementsAssignment_0_4_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getDeleteAccess().getDelElementsAssignment_0_4_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1381:6: ( ( rule__Delete__DelVarsAssignment_0_4_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1381:6: ( ( rule__Delete__DelVarsAssignment_0_4_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1382:1: ( rule__Delete__DelVarsAssignment_0_4_1 )
                    {
                     before(grammarAccess.getDeleteAccess().getDelVarsAssignment_0_4_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1383:1: ( rule__Delete__DelVarsAssignment_0_4_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1383:2: rule__Delete__DelVarsAssignment_0_4_1
                    {
                    pushFollow(FOLLOW_rule__Delete__DelVarsAssignment_0_4_1_in_rule__Delete__Alternatives_0_43040);
                    rule__Delete__DelVarsAssignment_0_4_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getDeleteAccess().getDelVarsAssignment_0_4_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1387:6: ( ( rule__Delete__DelArraysAssignment_0_4_2 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1387:6: ( ( rule__Delete__DelArraysAssignment_0_4_2 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1388:1: ( rule__Delete__DelArraysAssignment_0_4_2 )
                    {
                     before(grammarAccess.getDeleteAccess().getDelArraysAssignment_0_4_2()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1389:1: ( rule__Delete__DelArraysAssignment_0_4_2 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1389:2: rule__Delete__DelArraysAssignment_0_4_2
                    {
                    pushFollow(FOLLOW_rule__Delete__DelArraysAssignment_0_4_2_in_rule__Delete__Alternatives_0_43058);
                    rule__Delete__DelArraysAssignment_0_4_2();

                    state._fsp--;


                    }

                     after(grammarAccess.getDeleteAccess().getDelArraysAssignment_0_4_2()); 

                    }


                    }
                    break;
                case 4 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1393:6: ( ( rule__Delete__SizeAssignment_0_4_3 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1393:6: ( ( rule__Delete__SizeAssignment_0_4_3 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1394:1: ( rule__Delete__SizeAssignment_0_4_3 )
                    {
                     before(grammarAccess.getDeleteAccess().getSizeAssignment_0_4_3()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1395:1: ( rule__Delete__SizeAssignment_0_4_3 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1395:2: rule__Delete__SizeAssignment_0_4_3
                    {
                    pushFollow(FOLLOW_rule__Delete__SizeAssignment_0_4_3_in_rule__Delete__Alternatives_0_43076);
                    rule__Delete__SizeAssignment_0_4_3();

                    state._fsp--;


                    }

                     after(grammarAccess.getDeleteAccess().getSizeAssignment_0_4_3()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Alternatives_0_4"


    // $ANTLR start "rule__Delete__Alternatives_0_5"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1404:1: rule__Delete__Alternatives_0_5 : ( ( ( rule__Delete__Group_0_5_0__0 ) ) | ( ( rule__Delete__DelArraysAssignment_0_5_1 ) ) | ( ( rule__Delete__SizeAssignment_0_5_2 ) ) );
    public final void rule__Delete__Alternatives_0_5() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1408:1: ( ( ( rule__Delete__Group_0_5_0__0 ) ) | ( ( rule__Delete__DelArraysAssignment_0_5_1 ) ) | ( ( rule__Delete__SizeAssignment_0_5_2 ) ) )
            int alt16=3;
            alt16 = dfa16.predict(input);
            switch (alt16) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1409:1: ( ( rule__Delete__Group_0_5_0__0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1409:1: ( ( rule__Delete__Group_0_5_0__0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1410:1: ( rule__Delete__Group_0_5_0__0 )
                    {
                     before(grammarAccess.getDeleteAccess().getGroup_0_5_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1411:1: ( rule__Delete__Group_0_5_0__0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1411:2: rule__Delete__Group_0_5_0__0
                    {
                    pushFollow(FOLLOW_rule__Delete__Group_0_5_0__0_in_rule__Delete__Alternatives_0_53109);
                    rule__Delete__Group_0_5_0__0();

                    state._fsp--;


                    }

                     after(grammarAccess.getDeleteAccess().getGroup_0_5_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1415:6: ( ( rule__Delete__DelArraysAssignment_0_5_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1415:6: ( ( rule__Delete__DelArraysAssignment_0_5_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1416:1: ( rule__Delete__DelArraysAssignment_0_5_1 )
                    {
                     before(grammarAccess.getDeleteAccess().getDelArraysAssignment_0_5_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1417:1: ( rule__Delete__DelArraysAssignment_0_5_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1417:2: rule__Delete__DelArraysAssignment_0_5_1
                    {
                    pushFollow(FOLLOW_rule__Delete__DelArraysAssignment_0_5_1_in_rule__Delete__Alternatives_0_53127);
                    rule__Delete__DelArraysAssignment_0_5_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getDeleteAccess().getDelArraysAssignment_0_5_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1421:6: ( ( rule__Delete__SizeAssignment_0_5_2 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1421:6: ( ( rule__Delete__SizeAssignment_0_5_2 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1422:1: ( rule__Delete__SizeAssignment_0_5_2 )
                    {
                     before(grammarAccess.getDeleteAccess().getSizeAssignment_0_5_2()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1423:1: ( rule__Delete__SizeAssignment_0_5_2 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1423:2: rule__Delete__SizeAssignment_0_5_2
                    {
                    pushFollow(FOLLOW_rule__Delete__SizeAssignment_0_5_2_in_rule__Delete__Alternatives_0_53145);
                    rule__Delete__SizeAssignment_0_5_2();

                    state._fsp--;


                    }

                     after(grammarAccess.getDeleteAccess().getSizeAssignment_0_5_2()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Alternatives_0_5"


    // $ANTLR start "rule__Delete__Alternatives_0_5_0_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1432:1: rule__Delete__Alternatives_0_5_0_1 : ( ( ( rule__Delete__DelElementsAssignment_0_5_0_1_0 ) ) | ( ( rule__Delete__DelVarsAssignment_0_5_0_1_1 ) ) );
    public final void rule__Delete__Alternatives_0_5_0_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1436:1: ( ( ( rule__Delete__DelElementsAssignment_0_5_0_1_0 ) ) | ( ( rule__Delete__DelVarsAssignment_0_5_0_1_1 ) ) )
            int alt17=2;
            int LA17_0 = input.LA(1);

            if ( (LA17_0==RULE_INT) ) {
                alt17=1;
            }
            else if ( (LA17_0==RULE_ID) ) {
                alt17=2;
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 17, 0, input);

                throw nvae;
            }
            switch (alt17) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1437:1: ( ( rule__Delete__DelElementsAssignment_0_5_0_1_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1437:1: ( ( rule__Delete__DelElementsAssignment_0_5_0_1_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1438:1: ( rule__Delete__DelElementsAssignment_0_5_0_1_0 )
                    {
                     before(grammarAccess.getDeleteAccess().getDelElementsAssignment_0_5_0_1_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1439:1: ( rule__Delete__DelElementsAssignment_0_5_0_1_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1439:2: rule__Delete__DelElementsAssignment_0_5_0_1_0
                    {
                    pushFollow(FOLLOW_rule__Delete__DelElementsAssignment_0_5_0_1_0_in_rule__Delete__Alternatives_0_5_0_13178);
                    rule__Delete__DelElementsAssignment_0_5_0_1_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getDeleteAccess().getDelElementsAssignment_0_5_0_1_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1443:6: ( ( rule__Delete__DelVarsAssignment_0_5_0_1_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1443:6: ( ( rule__Delete__DelVarsAssignment_0_5_0_1_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1444:1: ( rule__Delete__DelVarsAssignment_0_5_0_1_1 )
                    {
                     before(grammarAccess.getDeleteAccess().getDelVarsAssignment_0_5_0_1_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1445:1: ( rule__Delete__DelVarsAssignment_0_5_0_1_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1445:2: rule__Delete__DelVarsAssignment_0_5_0_1_1
                    {
                    pushFollow(FOLLOW_rule__Delete__DelVarsAssignment_0_5_0_1_1_in_rule__Delete__Alternatives_0_5_0_13196);
                    rule__Delete__DelVarsAssignment_0_5_0_1_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getDeleteAccess().getDelVarsAssignment_0_5_0_1_1()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Alternatives_0_5_0_1"


    // $ANTLR start "rule__Delete__Alternatives_1_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1454:1: rule__Delete__Alternatives_1_0 : ( ( ( rule__Delete__ArrayAssignment_1_0_0 ) ) | ( ( rule__Delete__ArrayElementAssignment_1_0_1 ) ) );
    public final void rule__Delete__Alternatives_1_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1458:1: ( ( ( rule__Delete__ArrayAssignment_1_0_0 ) ) | ( ( rule__Delete__ArrayElementAssignment_1_0_1 ) ) )
            int alt18=2;
            int LA18_0 = input.LA(1);

            if ( (LA18_0==RULE_ID) ) {
                int LA18_1 = input.LA(2);

                if ( (LA18_1==18) ) {
                    alt18=1;
                }
                else if ( (LA18_1==23) ) {
                    alt18=2;
                }
                else {
                    NoViableAltException nvae =
                        new NoViableAltException("", 18, 1, input);

                    throw nvae;
                }
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 18, 0, input);

                throw nvae;
            }
            switch (alt18) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1459:1: ( ( rule__Delete__ArrayAssignment_1_0_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1459:1: ( ( rule__Delete__ArrayAssignment_1_0_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1460:1: ( rule__Delete__ArrayAssignment_1_0_0 )
                    {
                     before(grammarAccess.getDeleteAccess().getArrayAssignment_1_0_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1461:1: ( rule__Delete__ArrayAssignment_1_0_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1461:2: rule__Delete__ArrayAssignment_1_0_0
                    {
                    pushFollow(FOLLOW_rule__Delete__ArrayAssignment_1_0_0_in_rule__Delete__Alternatives_1_03229);
                    rule__Delete__ArrayAssignment_1_0_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getDeleteAccess().getArrayAssignment_1_0_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1465:6: ( ( rule__Delete__ArrayElementAssignment_1_0_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1465:6: ( ( rule__Delete__ArrayElementAssignment_1_0_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1466:1: ( rule__Delete__ArrayElementAssignment_1_0_1 )
                    {
                     before(grammarAccess.getDeleteAccess().getArrayElementAssignment_1_0_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1467:1: ( rule__Delete__ArrayElementAssignment_1_0_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1467:2: rule__Delete__ArrayElementAssignment_1_0_1
                    {
                    pushFollow(FOLLOW_rule__Delete__ArrayElementAssignment_1_0_1_in_rule__Delete__Alternatives_1_03247);
                    rule__Delete__ArrayElementAssignment_1_0_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getDeleteAccess().getArrayElementAssignment_1_0_1()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Alternatives_1_0"


    // $ANTLR start "rule__Delete__Alternatives_1_4"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1476:1: rule__Delete__Alternatives_1_4 : ( ( ( rule__Delete__IndexsAssignment_1_4_0 ) ) | ( ( rule__Delete__FindSimilarsAssignment_1_4_1 ) ) | ( ( rule__Delete__HighestCRsAssignment_1_4_2 ) ) );
    public final void rule__Delete__Alternatives_1_4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1480:1: ( ( ( rule__Delete__IndexsAssignment_1_4_0 ) ) | ( ( rule__Delete__FindSimilarsAssignment_1_4_1 ) ) | ( ( rule__Delete__HighestCRsAssignment_1_4_2 ) ) )
            int alt19=3;
            switch ( input.LA(1) ) {
            case 23:
                {
                alt19=1;
                }
                break;
            case 35:
                {
                alt19=2;
                }
                break;
            case 34:
                {
                alt19=3;
                }
                break;
            default:
                NoViableAltException nvae =
                    new NoViableAltException("", 19, 0, input);

                throw nvae;
            }

            switch (alt19) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1481:1: ( ( rule__Delete__IndexsAssignment_1_4_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1481:1: ( ( rule__Delete__IndexsAssignment_1_4_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1482:1: ( rule__Delete__IndexsAssignment_1_4_0 )
                    {
                     before(grammarAccess.getDeleteAccess().getIndexsAssignment_1_4_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1483:1: ( rule__Delete__IndexsAssignment_1_4_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1483:2: rule__Delete__IndexsAssignment_1_4_0
                    {
                    pushFollow(FOLLOW_rule__Delete__IndexsAssignment_1_4_0_in_rule__Delete__Alternatives_1_43280);
                    rule__Delete__IndexsAssignment_1_4_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getDeleteAccess().getIndexsAssignment_1_4_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1487:6: ( ( rule__Delete__FindSimilarsAssignment_1_4_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1487:6: ( ( rule__Delete__FindSimilarsAssignment_1_4_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1488:1: ( rule__Delete__FindSimilarsAssignment_1_4_1 )
                    {
                     before(grammarAccess.getDeleteAccess().getFindSimilarsAssignment_1_4_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1489:1: ( rule__Delete__FindSimilarsAssignment_1_4_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1489:2: rule__Delete__FindSimilarsAssignment_1_4_1
                    {
                    pushFollow(FOLLOW_rule__Delete__FindSimilarsAssignment_1_4_1_in_rule__Delete__Alternatives_1_43298);
                    rule__Delete__FindSimilarsAssignment_1_4_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getDeleteAccess().getFindSimilarsAssignment_1_4_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1493:6: ( ( rule__Delete__HighestCRsAssignment_1_4_2 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1493:6: ( ( rule__Delete__HighestCRsAssignment_1_4_2 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1494:1: ( rule__Delete__HighestCRsAssignment_1_4_2 )
                    {
                     before(grammarAccess.getDeleteAccess().getHighestCRsAssignment_1_4_2()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1495:1: ( rule__Delete__HighestCRsAssignment_1_4_2 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1495:2: rule__Delete__HighestCRsAssignment_1_4_2
                    {
                    pushFollow(FOLLOW_rule__Delete__HighestCRsAssignment_1_4_2_in_rule__Delete__Alternatives_1_43316);
                    rule__Delete__HighestCRsAssignment_1_4_2();

                    state._fsp--;


                    }

                     after(grammarAccess.getDeleteAccess().getHighestCRsAssignment_1_4_2()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Alternatives_1_4"


    // $ANTLR start "rule__Delete__Alternatives_1_5_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1504:1: rule__Delete__Alternatives_1_5_1 : ( ( ( rule__Delete__IndxsAssignment_1_5_1_0 ) ) | ( ( rule__Delete__FindSimilarsAssignment_1_5_1_1 ) ) | ( ( rule__Delete__HighestCRsAssignment_1_5_1_2 ) ) );
    public final void rule__Delete__Alternatives_1_5_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1508:1: ( ( ( rule__Delete__IndxsAssignment_1_5_1_0 ) ) | ( ( rule__Delete__FindSimilarsAssignment_1_5_1_1 ) ) | ( ( rule__Delete__HighestCRsAssignment_1_5_1_2 ) ) )
            int alt20=3;
            switch ( input.LA(1) ) {
            case 23:
                {
                alt20=1;
                }
                break;
            case 35:
                {
                alt20=2;
                }
                break;
            case 34:
                {
                alt20=3;
                }
                break;
            default:
                NoViableAltException nvae =
                    new NoViableAltException("", 20, 0, input);

                throw nvae;
            }

            switch (alt20) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1509:1: ( ( rule__Delete__IndxsAssignment_1_5_1_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1509:1: ( ( rule__Delete__IndxsAssignment_1_5_1_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1510:1: ( rule__Delete__IndxsAssignment_1_5_1_0 )
                    {
                     before(grammarAccess.getDeleteAccess().getIndxsAssignment_1_5_1_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1511:1: ( rule__Delete__IndxsAssignment_1_5_1_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1511:2: rule__Delete__IndxsAssignment_1_5_1_0
                    {
                    pushFollow(FOLLOW_rule__Delete__IndxsAssignment_1_5_1_0_in_rule__Delete__Alternatives_1_5_13349);
                    rule__Delete__IndxsAssignment_1_5_1_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getDeleteAccess().getIndxsAssignment_1_5_1_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1515:6: ( ( rule__Delete__FindSimilarsAssignment_1_5_1_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1515:6: ( ( rule__Delete__FindSimilarsAssignment_1_5_1_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1516:1: ( rule__Delete__FindSimilarsAssignment_1_5_1_1 )
                    {
                     before(grammarAccess.getDeleteAccess().getFindSimilarsAssignment_1_5_1_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1517:1: ( rule__Delete__FindSimilarsAssignment_1_5_1_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1517:2: rule__Delete__FindSimilarsAssignment_1_5_1_1
                    {
                    pushFollow(FOLLOW_rule__Delete__FindSimilarsAssignment_1_5_1_1_in_rule__Delete__Alternatives_1_5_13367);
                    rule__Delete__FindSimilarsAssignment_1_5_1_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getDeleteAccess().getFindSimilarsAssignment_1_5_1_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1521:6: ( ( rule__Delete__HighestCRsAssignment_1_5_1_2 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1521:6: ( ( rule__Delete__HighestCRsAssignment_1_5_1_2 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1522:1: ( rule__Delete__HighestCRsAssignment_1_5_1_2 )
                    {
                     before(grammarAccess.getDeleteAccess().getHighestCRsAssignment_1_5_1_2()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1523:1: ( rule__Delete__HighestCRsAssignment_1_5_1_2 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1523:2: rule__Delete__HighestCRsAssignment_1_5_1_2
                    {
                    pushFollow(FOLLOW_rule__Delete__HighestCRsAssignment_1_5_1_2_in_rule__Delete__Alternatives_1_5_13385);
                    rule__Delete__HighestCRsAssignment_1_5_1_2();

                    state._fsp--;


                    }

                     after(grammarAccess.getDeleteAccess().getHighestCRsAssignment_1_5_1_2()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Alternatives_1_5_1"


    // $ANTLR start "rule__Function__Alternatives"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1532:1: rule__Function__Alternatives : ( ( ( rule__Function__StandardFunctionAssignment_0 ) ) | ( ( rule__Function__CrFunctionAssignment_1 ) ) );
    public final void rule__Function__Alternatives() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1536:1: ( ( ( rule__Function__StandardFunctionAssignment_0 ) ) | ( ( rule__Function__CrFunctionAssignment_1 ) ) )
            int alt21=2;
            int LA21_0 = input.LA(1);

            if ( ((LA21_0>=29 && LA21_0<=31)) ) {
                alt21=1;
            }
            else if ( ((LA21_0>=32 && LA21_0<=35)) ) {
                alt21=2;
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 21, 0, input);

                throw nvae;
            }
            switch (alt21) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1537:1: ( ( rule__Function__StandardFunctionAssignment_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1537:1: ( ( rule__Function__StandardFunctionAssignment_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1538:1: ( rule__Function__StandardFunctionAssignment_0 )
                    {
                     before(grammarAccess.getFunctionAccess().getStandardFunctionAssignment_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1539:1: ( rule__Function__StandardFunctionAssignment_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1539:2: rule__Function__StandardFunctionAssignment_0
                    {
                    pushFollow(FOLLOW_rule__Function__StandardFunctionAssignment_0_in_rule__Function__Alternatives3418);
                    rule__Function__StandardFunctionAssignment_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getFunctionAccess().getStandardFunctionAssignment_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1543:6: ( ( rule__Function__CrFunctionAssignment_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1543:6: ( ( rule__Function__CrFunctionAssignment_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1544:1: ( rule__Function__CrFunctionAssignment_1 )
                    {
                     before(grammarAccess.getFunctionAccess().getCrFunctionAssignment_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1545:1: ( rule__Function__CrFunctionAssignment_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1545:2: rule__Function__CrFunctionAssignment_1
                    {
                    pushFollow(FOLLOW_rule__Function__CrFunctionAssignment_1_in_rule__Function__Alternatives3436);
                    rule__Function__CrFunctionAssignment_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getFunctionAccess().getCrFunctionAssignment_1()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Function__Alternatives"


    // $ANTLR start "rule__StandardFunction__Alternatives"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1554:1: rule__StandardFunction__Alternatives : ( ( ( rule__StandardFunction__PrintAssignment_0 ) ) | ( ( rule__StandardFunction__ForAssignment_1 ) ) | ( ( rule__StandardFunction__ForallAssignment_2 ) ) );
    public final void rule__StandardFunction__Alternatives() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1558:1: ( ( ( rule__StandardFunction__PrintAssignment_0 ) ) | ( ( rule__StandardFunction__ForAssignment_1 ) ) | ( ( rule__StandardFunction__ForallAssignment_2 ) ) )
            int alt22=3;
            switch ( input.LA(1) ) {
            case 29:
                {
                alt22=1;
                }
                break;
            case 30:
                {
                alt22=2;
                }
                break;
            case 31:
                {
                alt22=3;
                }
                break;
            default:
                NoViableAltException nvae =
                    new NoViableAltException("", 22, 0, input);

                throw nvae;
            }

            switch (alt22) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1559:1: ( ( rule__StandardFunction__PrintAssignment_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1559:1: ( ( rule__StandardFunction__PrintAssignment_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1560:1: ( rule__StandardFunction__PrintAssignment_0 )
                    {
                     before(grammarAccess.getStandardFunctionAccess().getPrintAssignment_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1561:1: ( rule__StandardFunction__PrintAssignment_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1561:2: rule__StandardFunction__PrintAssignment_0
                    {
                    pushFollow(FOLLOW_rule__StandardFunction__PrintAssignment_0_in_rule__StandardFunction__Alternatives3469);
                    rule__StandardFunction__PrintAssignment_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getStandardFunctionAccess().getPrintAssignment_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1565:6: ( ( rule__StandardFunction__ForAssignment_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1565:6: ( ( rule__StandardFunction__ForAssignment_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1566:1: ( rule__StandardFunction__ForAssignment_1 )
                    {
                     before(grammarAccess.getStandardFunctionAccess().getForAssignment_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1567:1: ( rule__StandardFunction__ForAssignment_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1567:2: rule__StandardFunction__ForAssignment_1
                    {
                    pushFollow(FOLLOW_rule__StandardFunction__ForAssignment_1_in_rule__StandardFunction__Alternatives3487);
                    rule__StandardFunction__ForAssignment_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getStandardFunctionAccess().getForAssignment_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1571:6: ( ( rule__StandardFunction__ForallAssignment_2 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1571:6: ( ( rule__StandardFunction__ForallAssignment_2 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1572:1: ( rule__StandardFunction__ForallAssignment_2 )
                    {
                     before(grammarAccess.getStandardFunctionAccess().getForallAssignment_2()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1573:1: ( rule__StandardFunction__ForallAssignment_2 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1573:2: rule__StandardFunction__ForallAssignment_2
                    {
                    pushFollow(FOLLOW_rule__StandardFunction__ForallAssignment_2_in_rule__StandardFunction__Alternatives3505);
                    rule__StandardFunction__ForallAssignment_2();

                    state._fsp--;


                    }

                     after(grammarAccess.getStandardFunctionAccess().getForallAssignment_2()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__StandardFunction__Alternatives"


    // $ANTLR start "rule__Print__Alternatives_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1582:1: rule__Print__Alternatives_2 : ( ( ( rule__Print__VarAssignment_2_0 ) ) | ( ( rule__Print__MsgAssignment_2_1 ) ) | ( ( rule__Print__AeParamAssignment_2_2 ) ) );
    public final void rule__Print__Alternatives_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1586:1: ( ( ( rule__Print__VarAssignment_2_0 ) ) | ( ( rule__Print__MsgAssignment_2_1 ) ) | ( ( rule__Print__AeParamAssignment_2_2 ) ) )
            int alt23=3;
            int LA23_0 = input.LA(1);

            if ( (LA23_0==RULE_ID) ) {
                int LA23_1 = input.LA(2);

                if ( (LA23_1==23) ) {
                    alt23=3;
                }
                else if ( (LA23_1==14||LA23_1==16) ) {
                    alt23=1;
                }
                else {
                    NoViableAltException nvae =
                        new NoViableAltException("", 23, 1, input);

                    throw nvae;
                }
            }
            else if ( (LA23_0==RULE_STRING) ) {
                alt23=2;
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 23, 0, input);

                throw nvae;
            }
            switch (alt23) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1587:1: ( ( rule__Print__VarAssignment_2_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1587:1: ( ( rule__Print__VarAssignment_2_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1588:1: ( rule__Print__VarAssignment_2_0 )
                    {
                     before(grammarAccess.getPrintAccess().getVarAssignment_2_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1589:1: ( rule__Print__VarAssignment_2_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1589:2: rule__Print__VarAssignment_2_0
                    {
                    pushFollow(FOLLOW_rule__Print__VarAssignment_2_0_in_rule__Print__Alternatives_23538);
                    rule__Print__VarAssignment_2_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getPrintAccess().getVarAssignment_2_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1593:6: ( ( rule__Print__MsgAssignment_2_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1593:6: ( ( rule__Print__MsgAssignment_2_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1594:1: ( rule__Print__MsgAssignment_2_1 )
                    {
                     before(grammarAccess.getPrintAccess().getMsgAssignment_2_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1595:1: ( rule__Print__MsgAssignment_2_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1595:2: rule__Print__MsgAssignment_2_1
                    {
                    pushFollow(FOLLOW_rule__Print__MsgAssignment_2_1_in_rule__Print__Alternatives_23556);
                    rule__Print__MsgAssignment_2_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getPrintAccess().getMsgAssignment_2_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1599:6: ( ( rule__Print__AeParamAssignment_2_2 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1599:6: ( ( rule__Print__AeParamAssignment_2_2 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1600:1: ( rule__Print__AeParamAssignment_2_2 )
                    {
                     before(grammarAccess.getPrintAccess().getAeParamAssignment_2_2()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1601:1: ( rule__Print__AeParamAssignment_2_2 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1601:2: rule__Print__AeParamAssignment_2_2
                    {
                    pushFollow(FOLLOW_rule__Print__AeParamAssignment_2_2_in_rule__Print__Alternatives_23574);
                    rule__Print__AeParamAssignment_2_2();

                    state._fsp--;


                    }

                     after(grammarAccess.getPrintAccess().getAeParamAssignment_2_2()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Print__Alternatives_2"


    // $ANTLR start "rule__Print__Alternatives_3_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1610:1: rule__Print__Alternatives_3_1 : ( ( ( rule__Print__VarAssignment_3_1_0 ) ) | ( ( rule__Print__MsgAssignment_3_1_1 ) ) | ( ( rule__Print__AeParamAssignment_3_1_2 ) ) );
    public final void rule__Print__Alternatives_3_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1614:1: ( ( ( rule__Print__VarAssignment_3_1_0 ) ) | ( ( rule__Print__MsgAssignment_3_1_1 ) ) | ( ( rule__Print__AeParamAssignment_3_1_2 ) ) )
            int alt24=3;
            int LA24_0 = input.LA(1);

            if ( (LA24_0==RULE_ID) ) {
                int LA24_1 = input.LA(2);

                if ( (LA24_1==23) ) {
                    alt24=3;
                }
                else if ( (LA24_1==14||LA24_1==16) ) {
                    alt24=1;
                }
                else {
                    NoViableAltException nvae =
                        new NoViableAltException("", 24, 1, input);

                    throw nvae;
                }
            }
            else if ( (LA24_0==RULE_STRING) ) {
                alt24=2;
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 24, 0, input);

                throw nvae;
            }
            switch (alt24) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1615:1: ( ( rule__Print__VarAssignment_3_1_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1615:1: ( ( rule__Print__VarAssignment_3_1_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1616:1: ( rule__Print__VarAssignment_3_1_0 )
                    {
                     before(grammarAccess.getPrintAccess().getVarAssignment_3_1_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1617:1: ( rule__Print__VarAssignment_3_1_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1617:2: rule__Print__VarAssignment_3_1_0
                    {
                    pushFollow(FOLLOW_rule__Print__VarAssignment_3_1_0_in_rule__Print__Alternatives_3_13607);
                    rule__Print__VarAssignment_3_1_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getPrintAccess().getVarAssignment_3_1_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1621:6: ( ( rule__Print__MsgAssignment_3_1_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1621:6: ( ( rule__Print__MsgAssignment_3_1_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1622:1: ( rule__Print__MsgAssignment_3_1_1 )
                    {
                     before(grammarAccess.getPrintAccess().getMsgAssignment_3_1_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1623:1: ( rule__Print__MsgAssignment_3_1_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1623:2: rule__Print__MsgAssignment_3_1_1
                    {
                    pushFollow(FOLLOW_rule__Print__MsgAssignment_3_1_1_in_rule__Print__Alternatives_3_13625);
                    rule__Print__MsgAssignment_3_1_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getPrintAccess().getMsgAssignment_3_1_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1627:6: ( ( rule__Print__AeParamAssignment_3_1_2 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1627:6: ( ( rule__Print__AeParamAssignment_3_1_2 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1628:1: ( rule__Print__AeParamAssignment_3_1_2 )
                    {
                     before(grammarAccess.getPrintAccess().getAeParamAssignment_3_1_2()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1629:1: ( rule__Print__AeParamAssignment_3_1_2 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1629:2: rule__Print__AeParamAssignment_3_1_2
                    {
                    pushFollow(FOLLOW_rule__Print__AeParamAssignment_3_1_2_in_rule__Print__Alternatives_3_13643);
                    rule__Print__AeParamAssignment_3_1_2();

                    state._fsp--;


                    }

                     after(grammarAccess.getPrintAccess().getAeParamAssignment_3_1_2()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Print__Alternatives_3_1"


    // $ANTLR start "rule__For__Alternatives"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1638:1: rule__For__Alternatives : ( ( ( rule__For__Group_0__0 ) ) | ( ( rule__For__Group_1__0 ) ) );
    public final void rule__For__Alternatives() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1642:1: ( ( ( rule__For__Group_0__0 ) ) | ( ( rule__For__Group_1__0 ) ) )
            int alt25=2;
            int LA25_0 = input.LA(1);

            if ( (LA25_0==30) ) {
                int LA25_1 = input.LA(2);

                if ( (LA25_1==15) ) {
                    int LA25_2 = input.LA(3);

                    if ( (LA25_2==19) ) {
                        alt25=1;
                    }
                    else if ( (LA25_2==RULE_ID) ) {
                        alt25=2;
                    }
                    else {
                        NoViableAltException nvae =
                            new NoViableAltException("", 25, 2, input);

                        throw nvae;
                    }
                }
                else {
                    NoViableAltException nvae =
                        new NoViableAltException("", 25, 1, input);

                    throw nvae;
                }
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 25, 0, input);

                throw nvae;
            }
            switch (alt25) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1643:1: ( ( rule__For__Group_0__0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1643:1: ( ( rule__For__Group_0__0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1644:1: ( rule__For__Group_0__0 )
                    {
                     before(grammarAccess.getForAccess().getGroup_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1645:1: ( rule__For__Group_0__0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1645:2: rule__For__Group_0__0
                    {
                    pushFollow(FOLLOW_rule__For__Group_0__0_in_rule__For__Alternatives3676);
                    rule__For__Group_0__0();

                    state._fsp--;


                    }

                     after(grammarAccess.getForAccess().getGroup_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1649:6: ( ( rule__For__Group_1__0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1649:6: ( ( rule__For__Group_1__0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1650:1: ( rule__For__Group_1__0 )
                    {
                     before(grammarAccess.getForAccess().getGroup_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1651:1: ( rule__For__Group_1__0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1651:2: rule__For__Group_1__0
                    {
                    pushFollow(FOLLOW_rule__For__Group_1__0_in_rule__For__Alternatives3694);
                    rule__For__Group_1__0();

                    state._fsp--;


                    }

                     after(grammarAccess.getForAccess().getGroup_1()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Alternatives"


    // $ANTLR start "rule__Forall__Alternatives_3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1660:1: rule__Forall__Alternatives_3 : ( ( ( rule__Forall__BeginAssignment_3_0 ) ) | ( ( rule__Forall__BeginVarAssignment_3_1 ) ) | ( ( rule__Forall__BeginFunctionAssignment_3_2 ) ) | ( ( rule__Forall__BeginAEAssignment_3_3 ) ) );
    public final void rule__Forall__Alternatives_3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1664:1: ( ( ( rule__Forall__BeginAssignment_3_0 ) ) | ( ( rule__Forall__BeginVarAssignment_3_1 ) ) | ( ( rule__Forall__BeginFunctionAssignment_3_2 ) ) | ( ( rule__Forall__BeginAEAssignment_3_3 ) ) )
            int alt26=4;
            alt26 = dfa26.predict(input);
            switch (alt26) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1665:1: ( ( rule__Forall__BeginAssignment_3_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1665:1: ( ( rule__Forall__BeginAssignment_3_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1666:1: ( rule__Forall__BeginAssignment_3_0 )
                    {
                     before(grammarAccess.getForallAccess().getBeginAssignment_3_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1667:1: ( rule__Forall__BeginAssignment_3_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1667:2: rule__Forall__BeginAssignment_3_0
                    {
                    pushFollow(FOLLOW_rule__Forall__BeginAssignment_3_0_in_rule__Forall__Alternatives_33727);
                    rule__Forall__BeginAssignment_3_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getForallAccess().getBeginAssignment_3_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1671:6: ( ( rule__Forall__BeginVarAssignment_3_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1671:6: ( ( rule__Forall__BeginVarAssignment_3_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1672:1: ( rule__Forall__BeginVarAssignment_3_1 )
                    {
                     before(grammarAccess.getForallAccess().getBeginVarAssignment_3_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1673:1: ( rule__Forall__BeginVarAssignment_3_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1673:2: rule__Forall__BeginVarAssignment_3_1
                    {
                    pushFollow(FOLLOW_rule__Forall__BeginVarAssignment_3_1_in_rule__Forall__Alternatives_33745);
                    rule__Forall__BeginVarAssignment_3_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getForallAccess().getBeginVarAssignment_3_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1677:6: ( ( rule__Forall__BeginFunctionAssignment_3_2 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1677:6: ( ( rule__Forall__BeginFunctionAssignment_3_2 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1678:1: ( rule__Forall__BeginFunctionAssignment_3_2 )
                    {
                     before(grammarAccess.getForallAccess().getBeginFunctionAssignment_3_2()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1679:1: ( rule__Forall__BeginFunctionAssignment_3_2 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1679:2: rule__Forall__BeginFunctionAssignment_3_2
                    {
                    pushFollow(FOLLOW_rule__Forall__BeginFunctionAssignment_3_2_in_rule__Forall__Alternatives_33763);
                    rule__Forall__BeginFunctionAssignment_3_2();

                    state._fsp--;


                    }

                     after(grammarAccess.getForallAccess().getBeginFunctionAssignment_3_2()); 

                    }


                    }
                    break;
                case 4 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1683:6: ( ( rule__Forall__BeginAEAssignment_3_3 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1683:6: ( ( rule__Forall__BeginAEAssignment_3_3 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1684:1: ( rule__Forall__BeginAEAssignment_3_3 )
                    {
                     before(grammarAccess.getForallAccess().getBeginAEAssignment_3_3()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1685:1: ( rule__Forall__BeginAEAssignment_3_3 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1685:2: rule__Forall__BeginAEAssignment_3_3
                    {
                    pushFollow(FOLLOW_rule__Forall__BeginAEAssignment_3_3_in_rule__Forall__Alternatives_33781);
                    rule__Forall__BeginAEAssignment_3_3();

                    state._fsp--;


                    }

                     after(grammarAccess.getForallAccess().getBeginAEAssignment_3_3()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__Alternatives_3"


    // $ANTLR start "rule__Forall__Alternatives_5"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1694:1: rule__Forall__Alternatives_5 : ( ( ( rule__Forall__EndAssignment_5_0 ) ) | ( ( rule__Forall__EndVarAssignment_5_1 ) ) | ( ( rule__Forall__EndFunctionAssignment_5_2 ) ) | ( ( rule__Forall__EndAEAssignment_5_3 ) ) );
    public final void rule__Forall__Alternatives_5() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1698:1: ( ( ( rule__Forall__EndAssignment_5_0 ) ) | ( ( rule__Forall__EndVarAssignment_5_1 ) ) | ( ( rule__Forall__EndFunctionAssignment_5_2 ) ) | ( ( rule__Forall__EndAEAssignment_5_3 ) ) )
            int alt27=4;
            alt27 = dfa27.predict(input);
            switch (alt27) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1699:1: ( ( rule__Forall__EndAssignment_5_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1699:1: ( ( rule__Forall__EndAssignment_5_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1700:1: ( rule__Forall__EndAssignment_5_0 )
                    {
                     before(grammarAccess.getForallAccess().getEndAssignment_5_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1701:1: ( rule__Forall__EndAssignment_5_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1701:2: rule__Forall__EndAssignment_5_0
                    {
                    pushFollow(FOLLOW_rule__Forall__EndAssignment_5_0_in_rule__Forall__Alternatives_53814);
                    rule__Forall__EndAssignment_5_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getForallAccess().getEndAssignment_5_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1705:6: ( ( rule__Forall__EndVarAssignment_5_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1705:6: ( ( rule__Forall__EndVarAssignment_5_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1706:1: ( rule__Forall__EndVarAssignment_5_1 )
                    {
                     before(grammarAccess.getForallAccess().getEndVarAssignment_5_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1707:1: ( rule__Forall__EndVarAssignment_5_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1707:2: rule__Forall__EndVarAssignment_5_1
                    {
                    pushFollow(FOLLOW_rule__Forall__EndVarAssignment_5_1_in_rule__Forall__Alternatives_53832);
                    rule__Forall__EndVarAssignment_5_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getForallAccess().getEndVarAssignment_5_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1711:6: ( ( rule__Forall__EndFunctionAssignment_5_2 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1711:6: ( ( rule__Forall__EndFunctionAssignment_5_2 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1712:1: ( rule__Forall__EndFunctionAssignment_5_2 )
                    {
                     before(grammarAccess.getForallAccess().getEndFunctionAssignment_5_2()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1713:1: ( rule__Forall__EndFunctionAssignment_5_2 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1713:2: rule__Forall__EndFunctionAssignment_5_2
                    {
                    pushFollow(FOLLOW_rule__Forall__EndFunctionAssignment_5_2_in_rule__Forall__Alternatives_53850);
                    rule__Forall__EndFunctionAssignment_5_2();

                    state._fsp--;


                    }

                     after(grammarAccess.getForallAccess().getEndFunctionAssignment_5_2()); 

                    }


                    }
                    break;
                case 4 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1717:6: ( ( rule__Forall__EndAEAssignment_5_3 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1717:6: ( ( rule__Forall__EndAEAssignment_5_3 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1718:1: ( rule__Forall__EndAEAssignment_5_3 )
                    {
                     before(grammarAccess.getForallAccess().getEndAEAssignment_5_3()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1719:1: ( rule__Forall__EndAEAssignment_5_3 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1719:2: rule__Forall__EndAEAssignment_5_3
                    {
                    pushFollow(FOLLOW_rule__Forall__EndAEAssignment_5_3_in_rule__Forall__Alternatives_53868);
                    rule__Forall__EndAEAssignment_5_3();

                    state._fsp--;


                    }

                     after(grammarAccess.getForallAccess().getEndAEAssignment_5_3()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__Alternatives_5"


    // $ANTLR start "rule__CRFunction__Alternatives"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1728:1: rule__CRFunction__Alternatives : ( ( ( rule__CRFunction__CalcCRAssignment_0 ) ) | ( ( rule__CRFunction__CalcMeanAssignment_1 ) ) | ( ( rule__CRFunction__HighestCRAssignment_2 ) ) | ( ( rule__CRFunction__FindSimilarAssignment_3 ) ) );
    public final void rule__CRFunction__Alternatives() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1732:1: ( ( ( rule__CRFunction__CalcCRAssignment_0 ) ) | ( ( rule__CRFunction__CalcMeanAssignment_1 ) ) | ( ( rule__CRFunction__HighestCRAssignment_2 ) ) | ( ( rule__CRFunction__FindSimilarAssignment_3 ) ) )
            int alt28=4;
            switch ( input.LA(1) ) {
            case 32:
                {
                alt28=1;
                }
                break;
            case 33:
                {
                alt28=2;
                }
                break;
            case 34:
                {
                alt28=3;
                }
                break;
            case 35:
                {
                alt28=4;
                }
                break;
            default:
                NoViableAltException nvae =
                    new NoViableAltException("", 28, 0, input);

                throw nvae;
            }

            switch (alt28) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1733:1: ( ( rule__CRFunction__CalcCRAssignment_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1733:1: ( ( rule__CRFunction__CalcCRAssignment_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1734:1: ( rule__CRFunction__CalcCRAssignment_0 )
                    {
                     before(grammarAccess.getCRFunctionAccess().getCalcCRAssignment_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1735:1: ( rule__CRFunction__CalcCRAssignment_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1735:2: rule__CRFunction__CalcCRAssignment_0
                    {
                    pushFollow(FOLLOW_rule__CRFunction__CalcCRAssignment_0_in_rule__CRFunction__Alternatives3901);
                    rule__CRFunction__CalcCRAssignment_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getCRFunctionAccess().getCalcCRAssignment_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1739:6: ( ( rule__CRFunction__CalcMeanAssignment_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1739:6: ( ( rule__CRFunction__CalcMeanAssignment_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1740:1: ( rule__CRFunction__CalcMeanAssignment_1 )
                    {
                     before(grammarAccess.getCRFunctionAccess().getCalcMeanAssignment_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1741:1: ( rule__CRFunction__CalcMeanAssignment_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1741:2: rule__CRFunction__CalcMeanAssignment_1
                    {
                    pushFollow(FOLLOW_rule__CRFunction__CalcMeanAssignment_1_in_rule__CRFunction__Alternatives3919);
                    rule__CRFunction__CalcMeanAssignment_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getCRFunctionAccess().getCalcMeanAssignment_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1745:6: ( ( rule__CRFunction__HighestCRAssignment_2 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1745:6: ( ( rule__CRFunction__HighestCRAssignment_2 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1746:1: ( rule__CRFunction__HighestCRAssignment_2 )
                    {
                     before(grammarAccess.getCRFunctionAccess().getHighestCRAssignment_2()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1747:1: ( rule__CRFunction__HighestCRAssignment_2 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1747:2: rule__CRFunction__HighestCRAssignment_2
                    {
                    pushFollow(FOLLOW_rule__CRFunction__HighestCRAssignment_2_in_rule__CRFunction__Alternatives3937);
                    rule__CRFunction__HighestCRAssignment_2();

                    state._fsp--;


                    }

                     after(grammarAccess.getCRFunctionAccess().getHighestCRAssignment_2()); 

                    }


                    }
                    break;
                case 4 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1751:6: ( ( rule__CRFunction__FindSimilarAssignment_3 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1751:6: ( ( rule__CRFunction__FindSimilarAssignment_3 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1752:1: ( rule__CRFunction__FindSimilarAssignment_3 )
                    {
                     before(grammarAccess.getCRFunctionAccess().getFindSimilarAssignment_3()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1753:1: ( rule__CRFunction__FindSimilarAssignment_3 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1753:2: rule__CRFunction__FindSimilarAssignment_3
                    {
                    pushFollow(FOLLOW_rule__CRFunction__FindSimilarAssignment_3_in_rule__CRFunction__Alternatives3955);
                    rule__CRFunction__FindSimilarAssignment_3();

                    state._fsp--;


                    }

                     after(grammarAccess.getCRFunctionAccess().getFindSimilarAssignment_3()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CRFunction__Alternatives"


    // $ANTLR start "rule__CalcCR__Alternatives"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1762:1: rule__CalcCR__Alternatives : ( ( ( rule__CalcCR__Group_0__0 ) ) | ( ( rule__CalcCR__Group_1__0 ) ) );
    public final void rule__CalcCR__Alternatives() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1766:1: ( ( ( rule__CalcCR__Group_0__0 ) ) | ( ( rule__CalcCR__Group_1__0 ) ) )
            int alt29=2;
            alt29 = dfa29.predict(input);
            switch (alt29) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1767:1: ( ( rule__CalcCR__Group_0__0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1767:1: ( ( rule__CalcCR__Group_0__0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1768:1: ( rule__CalcCR__Group_0__0 )
                    {
                     before(grammarAccess.getCalcCRAccess().getGroup_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1769:1: ( rule__CalcCR__Group_0__0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1769:2: rule__CalcCR__Group_0__0
                    {
                    pushFollow(FOLLOW_rule__CalcCR__Group_0__0_in_rule__CalcCR__Alternatives3988);
                    rule__CalcCR__Group_0__0();

                    state._fsp--;


                    }

                     after(grammarAccess.getCalcCRAccess().getGroup_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1773:6: ( ( rule__CalcCR__Group_1__0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1773:6: ( ( rule__CalcCR__Group_1__0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1774:1: ( rule__CalcCR__Group_1__0 )
                    {
                     before(grammarAccess.getCalcCRAccess().getGroup_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1775:1: ( rule__CalcCR__Group_1__0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1775:2: rule__CalcCR__Group_1__0
                    {
                    pushFollow(FOLLOW_rule__CalcCR__Group_1__0_in_rule__CalcCR__Alternatives4006);
                    rule__CalcCR__Group_1__0();

                    state._fsp--;


                    }

                     after(grammarAccess.getCalcCRAccess().getGroup_1()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__Alternatives"


    // $ANTLR start "rule__CalcCR__Alternatives_0_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1784:1: rule__CalcCR__Alternatives_0_2 : ( ( ( rule__CalcCR__VectorAssignment_0_2_0 ) ) | ( ( rule__CalcCR__ArrayElementAssignment_0_2_1 ) ) );
    public final void rule__CalcCR__Alternatives_0_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1788:1: ( ( ( rule__CalcCR__VectorAssignment_0_2_0 ) ) | ( ( rule__CalcCR__ArrayElementAssignment_0_2_1 ) ) )
            int alt30=2;
            int LA30_0 = input.LA(1);

            if ( (LA30_0==RULE_ID) ) {
                int LA30_1 = input.LA(2);

                if ( (LA30_1==16) ) {
                    alt30=1;
                }
                else if ( (LA30_1==23) ) {
                    alt30=2;
                }
                else {
                    NoViableAltException nvae =
                        new NoViableAltException("", 30, 1, input);

                    throw nvae;
                }
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 30, 0, input);

                throw nvae;
            }
            switch (alt30) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1789:1: ( ( rule__CalcCR__VectorAssignment_0_2_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1789:1: ( ( rule__CalcCR__VectorAssignment_0_2_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1790:1: ( rule__CalcCR__VectorAssignment_0_2_0 )
                    {
                     before(grammarAccess.getCalcCRAccess().getVectorAssignment_0_2_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1791:1: ( rule__CalcCR__VectorAssignment_0_2_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1791:2: rule__CalcCR__VectorAssignment_0_2_0
                    {
                    pushFollow(FOLLOW_rule__CalcCR__VectorAssignment_0_2_0_in_rule__CalcCR__Alternatives_0_24039);
                    rule__CalcCR__VectorAssignment_0_2_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getCalcCRAccess().getVectorAssignment_0_2_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1795:6: ( ( rule__CalcCR__ArrayElementAssignment_0_2_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1795:6: ( ( rule__CalcCR__ArrayElementAssignment_0_2_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1796:1: ( rule__CalcCR__ArrayElementAssignment_0_2_1 )
                    {
                     before(grammarAccess.getCalcCRAccess().getArrayElementAssignment_0_2_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1797:1: ( rule__CalcCR__ArrayElementAssignment_0_2_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1797:2: rule__CalcCR__ArrayElementAssignment_0_2_1
                    {
                    pushFollow(FOLLOW_rule__CalcCR__ArrayElementAssignment_0_2_1_in_rule__CalcCR__Alternatives_0_24057);
                    rule__CalcCR__ArrayElementAssignment_0_2_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getCalcCRAccess().getArrayElementAssignment_0_2_1()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__Alternatives_0_2"


    // $ANTLR start "rule__CalcCR__Alternatives_1_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1806:1: rule__CalcCR__Alternatives_1_2 : ( ( ( rule__CalcCR__ArrayElement1Assignment_1_2_0 ) ) | ( ( rule__CalcCR__Var1Assignment_1_2_1 ) ) );
    public final void rule__CalcCR__Alternatives_1_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1810:1: ( ( ( rule__CalcCR__ArrayElement1Assignment_1_2_0 ) ) | ( ( rule__CalcCR__Var1Assignment_1_2_1 ) ) )
            int alt31=2;
            int LA31_0 = input.LA(1);

            if ( (LA31_0==RULE_ID) ) {
                int LA31_1 = input.LA(2);

                if ( (LA31_1==23) ) {
                    alt31=1;
                }
                else if ( (LA31_1==14) ) {
                    alt31=2;
                }
                else {
                    NoViableAltException nvae =
                        new NoViableAltException("", 31, 1, input);

                    throw nvae;
                }
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 31, 0, input);

                throw nvae;
            }
            switch (alt31) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1811:1: ( ( rule__CalcCR__ArrayElement1Assignment_1_2_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1811:1: ( ( rule__CalcCR__ArrayElement1Assignment_1_2_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1812:1: ( rule__CalcCR__ArrayElement1Assignment_1_2_0 )
                    {
                     before(grammarAccess.getCalcCRAccess().getArrayElement1Assignment_1_2_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1813:1: ( rule__CalcCR__ArrayElement1Assignment_1_2_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1813:2: rule__CalcCR__ArrayElement1Assignment_1_2_0
                    {
                    pushFollow(FOLLOW_rule__CalcCR__ArrayElement1Assignment_1_2_0_in_rule__CalcCR__Alternatives_1_24090);
                    rule__CalcCR__ArrayElement1Assignment_1_2_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getCalcCRAccess().getArrayElement1Assignment_1_2_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1817:6: ( ( rule__CalcCR__Var1Assignment_1_2_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1817:6: ( ( rule__CalcCR__Var1Assignment_1_2_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1818:1: ( rule__CalcCR__Var1Assignment_1_2_1 )
                    {
                     before(grammarAccess.getCalcCRAccess().getVar1Assignment_1_2_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1819:1: ( rule__CalcCR__Var1Assignment_1_2_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1819:2: rule__CalcCR__Var1Assignment_1_2_1
                    {
                    pushFollow(FOLLOW_rule__CalcCR__Var1Assignment_1_2_1_in_rule__CalcCR__Alternatives_1_24108);
                    rule__CalcCR__Var1Assignment_1_2_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getCalcCRAccess().getVar1Assignment_1_2_1()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__Alternatives_1_2"


    // $ANTLR start "rule__CalcCR__Alternatives_1_4"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1828:1: rule__CalcCR__Alternatives_1_4 : ( ( ( rule__CalcCR__ArrayElement2Assignment_1_4_0 ) ) | ( ( rule__CalcCR__Var2Assignment_1_4_1 ) ) );
    public final void rule__CalcCR__Alternatives_1_4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1832:1: ( ( ( rule__CalcCR__ArrayElement2Assignment_1_4_0 ) ) | ( ( rule__CalcCR__Var2Assignment_1_4_1 ) ) )
            int alt32=2;
            int LA32_0 = input.LA(1);

            if ( (LA32_0==RULE_ID) ) {
                int LA32_1 = input.LA(2);

                if ( (LA32_1==23) ) {
                    alt32=1;
                }
                else if ( (LA32_1==16) ) {
                    alt32=2;
                }
                else {
                    NoViableAltException nvae =
                        new NoViableAltException("", 32, 1, input);

                    throw nvae;
                }
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 32, 0, input);

                throw nvae;
            }
            switch (alt32) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1833:1: ( ( rule__CalcCR__ArrayElement2Assignment_1_4_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1833:1: ( ( rule__CalcCR__ArrayElement2Assignment_1_4_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1834:1: ( rule__CalcCR__ArrayElement2Assignment_1_4_0 )
                    {
                     before(grammarAccess.getCalcCRAccess().getArrayElement2Assignment_1_4_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1835:1: ( rule__CalcCR__ArrayElement2Assignment_1_4_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1835:2: rule__CalcCR__ArrayElement2Assignment_1_4_0
                    {
                    pushFollow(FOLLOW_rule__CalcCR__ArrayElement2Assignment_1_4_0_in_rule__CalcCR__Alternatives_1_44141);
                    rule__CalcCR__ArrayElement2Assignment_1_4_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getCalcCRAccess().getArrayElement2Assignment_1_4_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1839:6: ( ( rule__CalcCR__Var2Assignment_1_4_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1839:6: ( ( rule__CalcCR__Var2Assignment_1_4_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1840:1: ( rule__CalcCR__Var2Assignment_1_4_1 )
                    {
                     before(grammarAccess.getCalcCRAccess().getVar2Assignment_1_4_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1841:1: ( rule__CalcCR__Var2Assignment_1_4_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1841:2: rule__CalcCR__Var2Assignment_1_4_1
                    {
                    pushFollow(FOLLOW_rule__CalcCR__Var2Assignment_1_4_1_in_rule__CalcCR__Alternatives_1_44159);
                    rule__CalcCR__Var2Assignment_1_4_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getCalcCRAccess().getVar2Assignment_1_4_1()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__Alternatives_1_4"


    // $ANTLR start "rule__CalcMean__Alternatives_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1850:1: rule__CalcMean__Alternatives_2 : ( ( ( rule__CalcMean__ArrayAssignment_2_0 ) ) | ( ( rule__CalcMean__ArrayElementAssignment_2_1 ) ) | ( ( rule__CalcMean__CalcCRAssignment_2_2 ) ) );
    public final void rule__CalcMean__Alternatives_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1854:1: ( ( ( rule__CalcMean__ArrayAssignment_2_0 ) ) | ( ( rule__CalcMean__ArrayElementAssignment_2_1 ) ) | ( ( rule__CalcMean__CalcCRAssignment_2_2 ) ) )
            int alt33=3;
            int LA33_0 = input.LA(1);

            if ( (LA33_0==RULE_ID) ) {
                int LA33_1 = input.LA(2);

                if ( (LA33_1==23) ) {
                    alt33=2;
                }
                else if ( (LA33_1==16) ) {
                    alt33=1;
                }
                else {
                    NoViableAltException nvae =
                        new NoViableAltException("", 33, 1, input);

                    throw nvae;
                }
            }
            else if ( (LA33_0==32) ) {
                alt33=3;
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 33, 0, input);

                throw nvae;
            }
            switch (alt33) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1855:1: ( ( rule__CalcMean__ArrayAssignment_2_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1855:1: ( ( rule__CalcMean__ArrayAssignment_2_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1856:1: ( rule__CalcMean__ArrayAssignment_2_0 )
                    {
                     before(grammarAccess.getCalcMeanAccess().getArrayAssignment_2_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1857:1: ( rule__CalcMean__ArrayAssignment_2_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1857:2: rule__CalcMean__ArrayAssignment_2_0
                    {
                    pushFollow(FOLLOW_rule__CalcMean__ArrayAssignment_2_0_in_rule__CalcMean__Alternatives_24192);
                    rule__CalcMean__ArrayAssignment_2_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getCalcMeanAccess().getArrayAssignment_2_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1861:6: ( ( rule__CalcMean__ArrayElementAssignment_2_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1861:6: ( ( rule__CalcMean__ArrayElementAssignment_2_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1862:1: ( rule__CalcMean__ArrayElementAssignment_2_1 )
                    {
                     before(grammarAccess.getCalcMeanAccess().getArrayElementAssignment_2_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1863:1: ( rule__CalcMean__ArrayElementAssignment_2_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1863:2: rule__CalcMean__ArrayElementAssignment_2_1
                    {
                    pushFollow(FOLLOW_rule__CalcMean__ArrayElementAssignment_2_1_in_rule__CalcMean__Alternatives_24210);
                    rule__CalcMean__ArrayElementAssignment_2_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getCalcMeanAccess().getArrayElementAssignment_2_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1867:6: ( ( rule__CalcMean__CalcCRAssignment_2_2 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1867:6: ( ( rule__CalcMean__CalcCRAssignment_2_2 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1868:1: ( rule__CalcMean__CalcCRAssignment_2_2 )
                    {
                     before(grammarAccess.getCalcMeanAccess().getCalcCRAssignment_2_2()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1869:1: ( rule__CalcMean__CalcCRAssignment_2_2 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1869:2: rule__CalcMean__CalcCRAssignment_2_2
                    {
                    pushFollow(FOLLOW_rule__CalcMean__CalcCRAssignment_2_2_in_rule__CalcMean__Alternatives_24228);
                    rule__CalcMean__CalcCRAssignment_2_2();

                    state._fsp--;


                    }

                     after(grammarAccess.getCalcMeanAccess().getCalcCRAssignment_2_2()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcMean__Alternatives_2"


    // $ANTLR start "rule__HighestCR__Alternatives_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1878:1: rule__HighestCR__Alternatives_2 : ( ( ( rule__HighestCR__ArrayAssignment_2_0 ) ) | ( ( rule__HighestCR__ArrayElementAssignment_2_1 ) ) | ( ( rule__HighestCR__CalcCRAssignment_2_2 ) ) );
    public final void rule__HighestCR__Alternatives_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1882:1: ( ( ( rule__HighestCR__ArrayAssignment_2_0 ) ) | ( ( rule__HighestCR__ArrayElementAssignment_2_1 ) ) | ( ( rule__HighestCR__CalcCRAssignment_2_2 ) ) )
            int alt34=3;
            int LA34_0 = input.LA(1);

            if ( (LA34_0==RULE_ID) ) {
                int LA34_1 = input.LA(2);

                if ( (LA34_1==23) ) {
                    alt34=2;
                }
                else if ( (LA34_1==16) ) {
                    alt34=1;
                }
                else {
                    NoViableAltException nvae =
                        new NoViableAltException("", 34, 1, input);

                    throw nvae;
                }
            }
            else if ( (LA34_0==32) ) {
                alt34=3;
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 34, 0, input);

                throw nvae;
            }
            switch (alt34) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1883:1: ( ( rule__HighestCR__ArrayAssignment_2_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1883:1: ( ( rule__HighestCR__ArrayAssignment_2_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1884:1: ( rule__HighestCR__ArrayAssignment_2_0 )
                    {
                     before(grammarAccess.getHighestCRAccess().getArrayAssignment_2_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1885:1: ( rule__HighestCR__ArrayAssignment_2_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1885:2: rule__HighestCR__ArrayAssignment_2_0
                    {
                    pushFollow(FOLLOW_rule__HighestCR__ArrayAssignment_2_0_in_rule__HighestCR__Alternatives_24261);
                    rule__HighestCR__ArrayAssignment_2_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getHighestCRAccess().getArrayAssignment_2_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1889:6: ( ( rule__HighestCR__ArrayElementAssignment_2_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1889:6: ( ( rule__HighestCR__ArrayElementAssignment_2_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1890:1: ( rule__HighestCR__ArrayElementAssignment_2_1 )
                    {
                     before(grammarAccess.getHighestCRAccess().getArrayElementAssignment_2_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1891:1: ( rule__HighestCR__ArrayElementAssignment_2_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1891:2: rule__HighestCR__ArrayElementAssignment_2_1
                    {
                    pushFollow(FOLLOW_rule__HighestCR__ArrayElementAssignment_2_1_in_rule__HighestCR__Alternatives_24279);
                    rule__HighestCR__ArrayElementAssignment_2_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getHighestCRAccess().getArrayElementAssignment_2_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1895:6: ( ( rule__HighestCR__CalcCRAssignment_2_2 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1895:6: ( ( rule__HighestCR__CalcCRAssignment_2_2 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1896:1: ( rule__HighestCR__CalcCRAssignment_2_2 )
                    {
                     before(grammarAccess.getHighestCRAccess().getCalcCRAssignment_2_2()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1897:1: ( rule__HighestCR__CalcCRAssignment_2_2 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1897:2: rule__HighestCR__CalcCRAssignment_2_2
                    {
                    pushFollow(FOLLOW_rule__HighestCR__CalcCRAssignment_2_2_in_rule__HighestCR__Alternatives_24297);
                    rule__HighestCR__CalcCRAssignment_2_2();

                    state._fsp--;


                    }

                     after(grammarAccess.getHighestCRAccess().getCalcCRAssignment_2_2()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__HighestCR__Alternatives_2"


    // $ANTLR start "rule__FindSimilar__Alternatives_4"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1906:1: rule__FindSimilar__Alternatives_4 : ( ( ( rule__FindSimilar__IndxIntAssignment_4_0 ) ) | ( ( rule__FindSimilar__IndxVarAssignment_4_1 ) ) | ( ( rule__FindSimilar__IndxAEAssignment_4_2 ) ) );
    public final void rule__FindSimilar__Alternatives_4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1910:1: ( ( ( rule__FindSimilar__IndxIntAssignment_4_0 ) ) | ( ( rule__FindSimilar__IndxVarAssignment_4_1 ) ) | ( ( rule__FindSimilar__IndxAEAssignment_4_2 ) ) )
            int alt35=3;
            int LA35_0 = input.LA(1);

            if ( (LA35_0==RULE_INT) ) {
                alt35=1;
            }
            else if ( (LA35_0==RULE_ID) ) {
                int LA35_2 = input.LA(2);

                if ( (LA35_2==23) ) {
                    alt35=3;
                }
                else if ( (LA35_2==14) ) {
                    alt35=2;
                }
                else {
                    NoViableAltException nvae =
                        new NoViableAltException("", 35, 2, input);

                    throw nvae;
                }
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 35, 0, input);

                throw nvae;
            }
            switch (alt35) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1911:1: ( ( rule__FindSimilar__IndxIntAssignment_4_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1911:1: ( ( rule__FindSimilar__IndxIntAssignment_4_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1912:1: ( rule__FindSimilar__IndxIntAssignment_4_0 )
                    {
                     before(grammarAccess.getFindSimilarAccess().getIndxIntAssignment_4_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1913:1: ( rule__FindSimilar__IndxIntAssignment_4_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1913:2: rule__FindSimilar__IndxIntAssignment_4_0
                    {
                    pushFollow(FOLLOW_rule__FindSimilar__IndxIntAssignment_4_0_in_rule__FindSimilar__Alternatives_44330);
                    rule__FindSimilar__IndxIntAssignment_4_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getFindSimilarAccess().getIndxIntAssignment_4_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1917:6: ( ( rule__FindSimilar__IndxVarAssignment_4_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1917:6: ( ( rule__FindSimilar__IndxVarAssignment_4_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1918:1: ( rule__FindSimilar__IndxVarAssignment_4_1 )
                    {
                     before(grammarAccess.getFindSimilarAccess().getIndxVarAssignment_4_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1919:1: ( rule__FindSimilar__IndxVarAssignment_4_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1919:2: rule__FindSimilar__IndxVarAssignment_4_1
                    {
                    pushFollow(FOLLOW_rule__FindSimilar__IndxVarAssignment_4_1_in_rule__FindSimilar__Alternatives_44348);
                    rule__FindSimilar__IndxVarAssignment_4_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getFindSimilarAccess().getIndxVarAssignment_4_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1923:6: ( ( rule__FindSimilar__IndxAEAssignment_4_2 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1923:6: ( ( rule__FindSimilar__IndxAEAssignment_4_2 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1924:1: ( rule__FindSimilar__IndxAEAssignment_4_2 )
                    {
                     before(grammarAccess.getFindSimilarAccess().getIndxAEAssignment_4_2()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1925:1: ( rule__FindSimilar__IndxAEAssignment_4_2 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1925:2: rule__FindSimilar__IndxAEAssignment_4_2
                    {
                    pushFollow(FOLLOW_rule__FindSimilar__IndxAEAssignment_4_2_in_rule__FindSimilar__Alternatives_44366);
                    rule__FindSimilar__IndxAEAssignment_4_2();

                    state._fsp--;


                    }

                     after(grammarAccess.getFindSimilarAccess().getIndxAEAssignment_4_2()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__Alternatives_4"


    // $ANTLR start "rule__FindSimilar__Alternatives_6"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1934:1: rule__FindSimilar__Alternatives_6 : ( ( ( rule__FindSimilar__SimilarityNumAssignment_6_0 ) ) | ( ( rule__FindSimilar__SimilarityVarAssignment_6_1 ) ) | ( ( rule__FindSimilar__SimilarityAEAssignment_6_2 ) ) | ( ( rule__FindSimilar__SimilarityCalcCRAssignment_6_3 ) ) | ( ( rule__FindSimilar__SimilarityCalcMeanAssignment_6_4 ) ) );
    public final void rule__FindSimilar__Alternatives_6() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1938:1: ( ( ( rule__FindSimilar__SimilarityNumAssignment_6_0 ) ) | ( ( rule__FindSimilar__SimilarityVarAssignment_6_1 ) ) | ( ( rule__FindSimilar__SimilarityAEAssignment_6_2 ) ) | ( ( rule__FindSimilar__SimilarityCalcCRAssignment_6_3 ) ) | ( ( rule__FindSimilar__SimilarityCalcMeanAssignment_6_4 ) ) )
            int alt36=5;
            switch ( input.LA(1) ) {
            case RULE_INT:
                {
                alt36=1;
                }
                break;
            case RULE_ID:
                {
                int LA36_2 = input.LA(2);

                if ( (LA36_2==23) ) {
                    alt36=3;
                }
                else if ( (LA36_2==16) ) {
                    alt36=2;
                }
                else {
                    NoViableAltException nvae =
                        new NoViableAltException("", 36, 2, input);

                    throw nvae;
                }
                }
                break;
            case 32:
                {
                alt36=4;
                }
                break;
            case 33:
                {
                alt36=5;
                }
                break;
            default:
                NoViableAltException nvae =
                    new NoViableAltException("", 36, 0, input);

                throw nvae;
            }

            switch (alt36) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1939:1: ( ( rule__FindSimilar__SimilarityNumAssignment_6_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1939:1: ( ( rule__FindSimilar__SimilarityNumAssignment_6_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1940:1: ( rule__FindSimilar__SimilarityNumAssignment_6_0 )
                    {
                     before(grammarAccess.getFindSimilarAccess().getSimilarityNumAssignment_6_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1941:1: ( rule__FindSimilar__SimilarityNumAssignment_6_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1941:2: rule__FindSimilar__SimilarityNumAssignment_6_0
                    {
                    pushFollow(FOLLOW_rule__FindSimilar__SimilarityNumAssignment_6_0_in_rule__FindSimilar__Alternatives_64399);
                    rule__FindSimilar__SimilarityNumAssignment_6_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getFindSimilarAccess().getSimilarityNumAssignment_6_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1945:6: ( ( rule__FindSimilar__SimilarityVarAssignment_6_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1945:6: ( ( rule__FindSimilar__SimilarityVarAssignment_6_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1946:1: ( rule__FindSimilar__SimilarityVarAssignment_6_1 )
                    {
                     before(grammarAccess.getFindSimilarAccess().getSimilarityVarAssignment_6_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1947:1: ( rule__FindSimilar__SimilarityVarAssignment_6_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1947:2: rule__FindSimilar__SimilarityVarAssignment_6_1
                    {
                    pushFollow(FOLLOW_rule__FindSimilar__SimilarityVarAssignment_6_1_in_rule__FindSimilar__Alternatives_64417);
                    rule__FindSimilar__SimilarityVarAssignment_6_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getFindSimilarAccess().getSimilarityVarAssignment_6_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1951:6: ( ( rule__FindSimilar__SimilarityAEAssignment_6_2 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1951:6: ( ( rule__FindSimilar__SimilarityAEAssignment_6_2 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1952:1: ( rule__FindSimilar__SimilarityAEAssignment_6_2 )
                    {
                     before(grammarAccess.getFindSimilarAccess().getSimilarityAEAssignment_6_2()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1953:1: ( rule__FindSimilar__SimilarityAEAssignment_6_2 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1953:2: rule__FindSimilar__SimilarityAEAssignment_6_2
                    {
                    pushFollow(FOLLOW_rule__FindSimilar__SimilarityAEAssignment_6_2_in_rule__FindSimilar__Alternatives_64435);
                    rule__FindSimilar__SimilarityAEAssignment_6_2();

                    state._fsp--;


                    }

                     after(grammarAccess.getFindSimilarAccess().getSimilarityAEAssignment_6_2()); 

                    }


                    }
                    break;
                case 4 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1957:6: ( ( rule__FindSimilar__SimilarityCalcCRAssignment_6_3 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1957:6: ( ( rule__FindSimilar__SimilarityCalcCRAssignment_6_3 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1958:1: ( rule__FindSimilar__SimilarityCalcCRAssignment_6_3 )
                    {
                     before(grammarAccess.getFindSimilarAccess().getSimilarityCalcCRAssignment_6_3()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1959:1: ( rule__FindSimilar__SimilarityCalcCRAssignment_6_3 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1959:2: rule__FindSimilar__SimilarityCalcCRAssignment_6_3
                    {
                    pushFollow(FOLLOW_rule__FindSimilar__SimilarityCalcCRAssignment_6_3_in_rule__FindSimilar__Alternatives_64453);
                    rule__FindSimilar__SimilarityCalcCRAssignment_6_3();

                    state._fsp--;


                    }

                     after(grammarAccess.getFindSimilarAccess().getSimilarityCalcCRAssignment_6_3()); 

                    }


                    }
                    break;
                case 5 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1963:6: ( ( rule__FindSimilar__SimilarityCalcMeanAssignment_6_4 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1963:6: ( ( rule__FindSimilar__SimilarityCalcMeanAssignment_6_4 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1964:1: ( rule__FindSimilar__SimilarityCalcMeanAssignment_6_4 )
                    {
                     before(grammarAccess.getFindSimilarAccess().getSimilarityCalcMeanAssignment_6_4()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1965:1: ( rule__FindSimilar__SimilarityCalcMeanAssignment_6_4 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1965:2: rule__FindSimilar__SimilarityCalcMeanAssignment_6_4
                    {
                    pushFollow(FOLLOW_rule__FindSimilar__SimilarityCalcMeanAssignment_6_4_in_rule__FindSimilar__Alternatives_64471);
                    rule__FindSimilar__SimilarityCalcMeanAssignment_6_4();

                    state._fsp--;


                    }

                     after(grammarAccess.getFindSimilarAccess().getSimilarityCalcMeanAssignment_6_4()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__Alternatives_6"


    // $ANTLR start "rule__Folder__Alternatives"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1975:1: rule__Folder__Alternatives : ( ( ( rule__Folder__LinuxFolderAssignment_0 ) ) | ( ( rule__Folder__WindowsFolderAssignment_1 ) ) );
    public final void rule__Folder__Alternatives() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1979:1: ( ( ( rule__Folder__LinuxFolderAssignment_0 ) ) | ( ( rule__Folder__WindowsFolderAssignment_1 ) ) )
            int alt37=2;
            int LA37_0 = input.LA(1);

            if ( (LA37_0==37) ) {
                alt37=1;
            }
            else if ( (LA37_0==RULE_ID) ) {
                alt37=2;
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 37, 0, input);

                throw nvae;
            }
            switch (alt37) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1980:1: ( ( rule__Folder__LinuxFolderAssignment_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1980:1: ( ( rule__Folder__LinuxFolderAssignment_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1981:1: ( rule__Folder__LinuxFolderAssignment_0 )
                    {
                     before(grammarAccess.getFolderAccess().getLinuxFolderAssignment_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1982:1: ( rule__Folder__LinuxFolderAssignment_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1982:2: rule__Folder__LinuxFolderAssignment_0
                    {
                    pushFollow(FOLLOW_rule__Folder__LinuxFolderAssignment_0_in_rule__Folder__Alternatives4505);
                    rule__Folder__LinuxFolderAssignment_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getFolderAccess().getLinuxFolderAssignment_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1986:6: ( ( rule__Folder__WindowsFolderAssignment_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1986:6: ( ( rule__Folder__WindowsFolderAssignment_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1987:1: ( rule__Folder__WindowsFolderAssignment_1 )
                    {
                     before(grammarAccess.getFolderAccess().getWindowsFolderAssignment_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1988:1: ( rule__Folder__WindowsFolderAssignment_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1988:2: rule__Folder__WindowsFolderAssignment_1
                    {
                    pushFollow(FOLLOW_rule__Folder__WindowsFolderAssignment_1_in_rule__Folder__Alternatives4523);
                    rule__Folder__WindowsFolderAssignment_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getFolderAccess().getWindowsFolderAssignment_1()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Folder__Alternatives"


    // $ANTLR start "rule__Index__Alternatives_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:1997:1: rule__Index__Alternatives_1 : ( ( ( rule__Index__Param1Assignment_1_0 ) ) | ( ( rule__Index__Var1Assignment_1_1 ) ) );
    public final void rule__Index__Alternatives_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2001:1: ( ( ( rule__Index__Param1Assignment_1_0 ) ) | ( ( rule__Index__Var1Assignment_1_1 ) ) )
            int alt38=2;
            int LA38_0 = input.LA(1);

            if ( (LA38_0==RULE_INT) ) {
                alt38=1;
            }
            else if ( (LA38_0==RULE_ID) ) {
                alt38=2;
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 38, 0, input);

                throw nvae;
            }
            switch (alt38) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2002:1: ( ( rule__Index__Param1Assignment_1_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2002:1: ( ( rule__Index__Param1Assignment_1_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2003:1: ( rule__Index__Param1Assignment_1_0 )
                    {
                     before(grammarAccess.getIndexAccess().getParam1Assignment_1_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2004:1: ( rule__Index__Param1Assignment_1_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2004:2: rule__Index__Param1Assignment_1_0
                    {
                    pushFollow(FOLLOW_rule__Index__Param1Assignment_1_0_in_rule__Index__Alternatives_14556);
                    rule__Index__Param1Assignment_1_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getIndexAccess().getParam1Assignment_1_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2008:6: ( ( rule__Index__Var1Assignment_1_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2008:6: ( ( rule__Index__Var1Assignment_1_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2009:1: ( rule__Index__Var1Assignment_1_1 )
                    {
                     before(grammarAccess.getIndexAccess().getVar1Assignment_1_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2010:1: ( rule__Index__Var1Assignment_1_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2010:2: rule__Index__Var1Assignment_1_1
                    {
                    pushFollow(FOLLOW_rule__Index__Var1Assignment_1_1_in_rule__Index__Alternatives_14574);
                    rule__Index__Var1Assignment_1_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getIndexAccess().getVar1Assignment_1_1()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Index__Alternatives_1"


    // $ANTLR start "rule__Index__Alternatives_2_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2019:1: rule__Index__Alternatives_2_1 : ( ( ( rule__Index__Param2Assignment_2_1_0 ) ) | ( ( rule__Index__Var2Assignment_2_1_1 ) ) );
    public final void rule__Index__Alternatives_2_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2023:1: ( ( ( rule__Index__Param2Assignment_2_1_0 ) ) | ( ( rule__Index__Var2Assignment_2_1_1 ) ) )
            int alt39=2;
            int LA39_0 = input.LA(1);

            if ( (LA39_0==RULE_INT) ) {
                alt39=1;
            }
            else if ( (LA39_0==RULE_ID) ) {
                alt39=2;
            }
            else {
                NoViableAltException nvae =
                    new NoViableAltException("", 39, 0, input);

                throw nvae;
            }
            switch (alt39) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2024:1: ( ( rule__Index__Param2Assignment_2_1_0 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2024:1: ( ( rule__Index__Param2Assignment_2_1_0 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2025:1: ( rule__Index__Param2Assignment_2_1_0 )
                    {
                     before(grammarAccess.getIndexAccess().getParam2Assignment_2_1_0()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2026:1: ( rule__Index__Param2Assignment_2_1_0 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2026:2: rule__Index__Param2Assignment_2_1_0
                    {
                    pushFollow(FOLLOW_rule__Index__Param2Assignment_2_1_0_in_rule__Index__Alternatives_2_14607);
                    rule__Index__Param2Assignment_2_1_0();

                    state._fsp--;


                    }

                     after(grammarAccess.getIndexAccess().getParam2Assignment_2_1_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2030:6: ( ( rule__Index__Var2Assignment_2_1_1 ) )
                    {
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2030:6: ( ( rule__Index__Var2Assignment_2_1_1 ) )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2031:1: ( rule__Index__Var2Assignment_2_1_1 )
                    {
                     before(grammarAccess.getIndexAccess().getVar2Assignment_2_1_1()); 
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2032:1: ( rule__Index__Var2Assignment_2_1_1 )
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2032:2: rule__Index__Var2Assignment_2_1_1
                    {
                    pushFollow(FOLLOW_rule__Index__Var2Assignment_2_1_1_in_rule__Index__Alternatives_2_14625);
                    rule__Index__Var2Assignment_2_1_1();

                    state._fsp--;


                    }

                     after(grammarAccess.getIndexAccess().getVar2Assignment_2_1_1()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Index__Alternatives_2_1"


    // $ANTLR start "rule__IntDec__Group__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2043:1: rule__IntDec__Group__0 : rule__IntDec__Group__0__Impl rule__IntDec__Group__1 ;
    public final void rule__IntDec__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2047:1: ( rule__IntDec__Group__0__Impl rule__IntDec__Group__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2048:2: rule__IntDec__Group__0__Impl rule__IntDec__Group__1
            {
            pushFollow(FOLLOW_rule__IntDec__Group__0__Impl_in_rule__IntDec__Group__04656);
            rule__IntDec__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__IntDec__Group__1_in_rule__IntDec__Group__04659);
            rule__IntDec__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__IntDec__Group__0"


    // $ANTLR start "rule__IntDec__Group__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2055:1: rule__IntDec__Group__0__Impl : ( ( rule__IntDec__TypeAssignment_0 ) ) ;
    public final void rule__IntDec__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2059:1: ( ( ( rule__IntDec__TypeAssignment_0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2060:1: ( ( rule__IntDec__TypeAssignment_0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2060:1: ( ( rule__IntDec__TypeAssignment_0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2061:1: ( rule__IntDec__TypeAssignment_0 )
            {
             before(grammarAccess.getIntDecAccess().getTypeAssignment_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2062:1: ( rule__IntDec__TypeAssignment_0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2062:2: rule__IntDec__TypeAssignment_0
            {
            pushFollow(FOLLOW_rule__IntDec__TypeAssignment_0_in_rule__IntDec__Group__0__Impl4686);
            rule__IntDec__TypeAssignment_0();

            state._fsp--;


            }

             after(grammarAccess.getIntDecAccess().getTypeAssignment_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__IntDec__Group__0__Impl"


    // $ANTLR start "rule__IntDec__Group__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2072:1: rule__IntDec__Group__1 : rule__IntDec__Group__1__Impl rule__IntDec__Group__2 ;
    public final void rule__IntDec__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2076:1: ( rule__IntDec__Group__1__Impl rule__IntDec__Group__2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2077:2: rule__IntDec__Group__1__Impl rule__IntDec__Group__2
            {
            pushFollow(FOLLOW_rule__IntDec__Group__1__Impl_in_rule__IntDec__Group__14716);
            rule__IntDec__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__IntDec__Group__2_in_rule__IntDec__Group__14719);
            rule__IntDec__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__IntDec__Group__1"


    // $ANTLR start "rule__IntDec__Group__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2084:1: rule__IntDec__Group__1__Impl : ( ( rule__IntDec__VarsAssignment_1 ) ) ;
    public final void rule__IntDec__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2088:1: ( ( ( rule__IntDec__VarsAssignment_1 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2089:1: ( ( rule__IntDec__VarsAssignment_1 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2089:1: ( ( rule__IntDec__VarsAssignment_1 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2090:1: ( rule__IntDec__VarsAssignment_1 )
            {
             before(grammarAccess.getIntDecAccess().getVarsAssignment_1()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2091:1: ( rule__IntDec__VarsAssignment_1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2091:2: rule__IntDec__VarsAssignment_1
            {
            pushFollow(FOLLOW_rule__IntDec__VarsAssignment_1_in_rule__IntDec__Group__1__Impl4746);
            rule__IntDec__VarsAssignment_1();

            state._fsp--;


            }

             after(grammarAccess.getIntDecAccess().getVarsAssignment_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__IntDec__Group__1__Impl"


    // $ANTLR start "rule__IntDec__Group__2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2101:1: rule__IntDec__Group__2 : rule__IntDec__Group__2__Impl ;
    public final void rule__IntDec__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2105:1: ( rule__IntDec__Group__2__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2106:2: rule__IntDec__Group__2__Impl
            {
            pushFollow(FOLLOW_rule__IntDec__Group__2__Impl_in_rule__IntDec__Group__24776);
            rule__IntDec__Group__2__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__IntDec__Group__2"


    // $ANTLR start "rule__IntDec__Group__2__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2112:1: rule__IntDec__Group__2__Impl : ( ( rule__IntDec__Group_2__0 )* ) ;
    public final void rule__IntDec__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2116:1: ( ( ( rule__IntDec__Group_2__0 )* ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2117:1: ( ( rule__IntDec__Group_2__0 )* )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2117:1: ( ( rule__IntDec__Group_2__0 )* )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2118:1: ( rule__IntDec__Group_2__0 )*
            {
             before(grammarAccess.getIntDecAccess().getGroup_2()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2119:1: ( rule__IntDec__Group_2__0 )*
            loop40:
            do {
                int alt40=2;
                int LA40_0 = input.LA(1);

                if ( (LA40_0==14) ) {
                    alt40=1;
                }


                switch (alt40) {
            	case 1 :
            	    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2119:2: rule__IntDec__Group_2__0
            	    {
            	    pushFollow(FOLLOW_rule__IntDec__Group_2__0_in_rule__IntDec__Group__2__Impl4803);
            	    rule__IntDec__Group_2__0();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop40;
                }
            } while (true);

             after(grammarAccess.getIntDecAccess().getGroup_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__IntDec__Group__2__Impl"


    // $ANTLR start "rule__IntDec__Group_2__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2135:1: rule__IntDec__Group_2__0 : rule__IntDec__Group_2__0__Impl rule__IntDec__Group_2__1 ;
    public final void rule__IntDec__Group_2__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2139:1: ( rule__IntDec__Group_2__0__Impl rule__IntDec__Group_2__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2140:2: rule__IntDec__Group_2__0__Impl rule__IntDec__Group_2__1
            {
            pushFollow(FOLLOW_rule__IntDec__Group_2__0__Impl_in_rule__IntDec__Group_2__04840);
            rule__IntDec__Group_2__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__IntDec__Group_2__1_in_rule__IntDec__Group_2__04843);
            rule__IntDec__Group_2__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__IntDec__Group_2__0"


    // $ANTLR start "rule__IntDec__Group_2__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2147:1: rule__IntDec__Group_2__0__Impl : ( ',' ) ;
    public final void rule__IntDec__Group_2__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2151:1: ( ( ',' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2152:1: ( ',' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2152:1: ( ',' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2153:1: ','
            {
             before(grammarAccess.getIntDecAccess().getCommaKeyword_2_0()); 
            match(input,14,FOLLOW_14_in_rule__IntDec__Group_2__0__Impl4871); 
             after(grammarAccess.getIntDecAccess().getCommaKeyword_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__IntDec__Group_2__0__Impl"


    // $ANTLR start "rule__IntDec__Group_2__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2166:1: rule__IntDec__Group_2__1 : rule__IntDec__Group_2__1__Impl ;
    public final void rule__IntDec__Group_2__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2170:1: ( rule__IntDec__Group_2__1__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2171:2: rule__IntDec__Group_2__1__Impl
            {
            pushFollow(FOLLOW_rule__IntDec__Group_2__1__Impl_in_rule__IntDec__Group_2__14902);
            rule__IntDec__Group_2__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__IntDec__Group_2__1"


    // $ANTLR start "rule__IntDec__Group_2__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2177:1: rule__IntDec__Group_2__1__Impl : ( ( rule__IntDec__VarsAssignment_2_1 ) ) ;
    public final void rule__IntDec__Group_2__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2181:1: ( ( ( rule__IntDec__VarsAssignment_2_1 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2182:1: ( ( rule__IntDec__VarsAssignment_2_1 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2182:1: ( ( rule__IntDec__VarsAssignment_2_1 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2183:1: ( rule__IntDec__VarsAssignment_2_1 )
            {
             before(grammarAccess.getIntDecAccess().getVarsAssignment_2_1()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2184:1: ( rule__IntDec__VarsAssignment_2_1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2184:2: rule__IntDec__VarsAssignment_2_1
            {
            pushFollow(FOLLOW_rule__IntDec__VarsAssignment_2_1_in_rule__IntDec__Group_2__1__Impl4929);
            rule__IntDec__VarsAssignment_2_1();

            state._fsp--;


            }

             after(grammarAccess.getIntDecAccess().getVarsAssignment_2_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__IntDec__Group_2__1__Impl"


    // $ANTLR start "rule__RealDec__Group__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2198:1: rule__RealDec__Group__0 : rule__RealDec__Group__0__Impl rule__RealDec__Group__1 ;
    public final void rule__RealDec__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2202:1: ( rule__RealDec__Group__0__Impl rule__RealDec__Group__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2203:2: rule__RealDec__Group__0__Impl rule__RealDec__Group__1
            {
            pushFollow(FOLLOW_rule__RealDec__Group__0__Impl_in_rule__RealDec__Group__04963);
            rule__RealDec__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__RealDec__Group__1_in_rule__RealDec__Group__04966);
            rule__RealDec__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RealDec__Group__0"


    // $ANTLR start "rule__RealDec__Group__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2210:1: rule__RealDec__Group__0__Impl : ( ( rule__RealDec__TypeAssignment_0 ) ) ;
    public final void rule__RealDec__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2214:1: ( ( ( rule__RealDec__TypeAssignment_0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2215:1: ( ( rule__RealDec__TypeAssignment_0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2215:1: ( ( rule__RealDec__TypeAssignment_0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2216:1: ( rule__RealDec__TypeAssignment_0 )
            {
             before(grammarAccess.getRealDecAccess().getTypeAssignment_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2217:1: ( rule__RealDec__TypeAssignment_0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2217:2: rule__RealDec__TypeAssignment_0
            {
            pushFollow(FOLLOW_rule__RealDec__TypeAssignment_0_in_rule__RealDec__Group__0__Impl4993);
            rule__RealDec__TypeAssignment_0();

            state._fsp--;


            }

             after(grammarAccess.getRealDecAccess().getTypeAssignment_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RealDec__Group__0__Impl"


    // $ANTLR start "rule__RealDec__Group__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2227:1: rule__RealDec__Group__1 : rule__RealDec__Group__1__Impl rule__RealDec__Group__2 ;
    public final void rule__RealDec__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2231:1: ( rule__RealDec__Group__1__Impl rule__RealDec__Group__2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2232:2: rule__RealDec__Group__1__Impl rule__RealDec__Group__2
            {
            pushFollow(FOLLOW_rule__RealDec__Group__1__Impl_in_rule__RealDec__Group__15023);
            rule__RealDec__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__RealDec__Group__2_in_rule__RealDec__Group__15026);
            rule__RealDec__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RealDec__Group__1"


    // $ANTLR start "rule__RealDec__Group__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2239:1: rule__RealDec__Group__1__Impl : ( ( rule__RealDec__VarsAssignment_1 ) ) ;
    public final void rule__RealDec__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2243:1: ( ( ( rule__RealDec__VarsAssignment_1 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2244:1: ( ( rule__RealDec__VarsAssignment_1 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2244:1: ( ( rule__RealDec__VarsAssignment_1 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2245:1: ( rule__RealDec__VarsAssignment_1 )
            {
             before(grammarAccess.getRealDecAccess().getVarsAssignment_1()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2246:1: ( rule__RealDec__VarsAssignment_1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2246:2: rule__RealDec__VarsAssignment_1
            {
            pushFollow(FOLLOW_rule__RealDec__VarsAssignment_1_in_rule__RealDec__Group__1__Impl5053);
            rule__RealDec__VarsAssignment_1();

            state._fsp--;


            }

             after(grammarAccess.getRealDecAccess().getVarsAssignment_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RealDec__Group__1__Impl"


    // $ANTLR start "rule__RealDec__Group__2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2256:1: rule__RealDec__Group__2 : rule__RealDec__Group__2__Impl ;
    public final void rule__RealDec__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2260:1: ( rule__RealDec__Group__2__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2261:2: rule__RealDec__Group__2__Impl
            {
            pushFollow(FOLLOW_rule__RealDec__Group__2__Impl_in_rule__RealDec__Group__25083);
            rule__RealDec__Group__2__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RealDec__Group__2"


    // $ANTLR start "rule__RealDec__Group__2__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2267:1: rule__RealDec__Group__2__Impl : ( ( rule__RealDec__Group_2__0 )* ) ;
    public final void rule__RealDec__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2271:1: ( ( ( rule__RealDec__Group_2__0 )* ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2272:1: ( ( rule__RealDec__Group_2__0 )* )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2272:1: ( ( rule__RealDec__Group_2__0 )* )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2273:1: ( rule__RealDec__Group_2__0 )*
            {
             before(grammarAccess.getRealDecAccess().getGroup_2()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2274:1: ( rule__RealDec__Group_2__0 )*
            loop41:
            do {
                int alt41=2;
                int LA41_0 = input.LA(1);

                if ( (LA41_0==14) ) {
                    alt41=1;
                }


                switch (alt41) {
            	case 1 :
            	    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2274:2: rule__RealDec__Group_2__0
            	    {
            	    pushFollow(FOLLOW_rule__RealDec__Group_2__0_in_rule__RealDec__Group__2__Impl5110);
            	    rule__RealDec__Group_2__0();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop41;
                }
            } while (true);

             after(grammarAccess.getRealDecAccess().getGroup_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RealDec__Group__2__Impl"


    // $ANTLR start "rule__RealDec__Group_2__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2290:1: rule__RealDec__Group_2__0 : rule__RealDec__Group_2__0__Impl rule__RealDec__Group_2__1 ;
    public final void rule__RealDec__Group_2__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2294:1: ( rule__RealDec__Group_2__0__Impl rule__RealDec__Group_2__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2295:2: rule__RealDec__Group_2__0__Impl rule__RealDec__Group_2__1
            {
            pushFollow(FOLLOW_rule__RealDec__Group_2__0__Impl_in_rule__RealDec__Group_2__05147);
            rule__RealDec__Group_2__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__RealDec__Group_2__1_in_rule__RealDec__Group_2__05150);
            rule__RealDec__Group_2__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RealDec__Group_2__0"


    // $ANTLR start "rule__RealDec__Group_2__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2302:1: rule__RealDec__Group_2__0__Impl : ( ',' ) ;
    public final void rule__RealDec__Group_2__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2306:1: ( ( ',' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2307:1: ( ',' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2307:1: ( ',' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2308:1: ','
            {
             before(grammarAccess.getRealDecAccess().getCommaKeyword_2_0()); 
            match(input,14,FOLLOW_14_in_rule__RealDec__Group_2__0__Impl5178); 
             after(grammarAccess.getRealDecAccess().getCommaKeyword_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RealDec__Group_2__0__Impl"


    // $ANTLR start "rule__RealDec__Group_2__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2321:1: rule__RealDec__Group_2__1 : rule__RealDec__Group_2__1__Impl ;
    public final void rule__RealDec__Group_2__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2325:1: ( rule__RealDec__Group_2__1__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2326:2: rule__RealDec__Group_2__1__Impl
            {
            pushFollow(FOLLOW_rule__RealDec__Group_2__1__Impl_in_rule__RealDec__Group_2__15209);
            rule__RealDec__Group_2__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RealDec__Group_2__1"


    // $ANTLR start "rule__RealDec__Group_2__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2332:1: rule__RealDec__Group_2__1__Impl : ( ( rule__RealDec__VarsAssignment_2_1 ) ) ;
    public final void rule__RealDec__Group_2__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2336:1: ( ( ( rule__RealDec__VarsAssignment_2_1 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2337:1: ( ( rule__RealDec__VarsAssignment_2_1 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2337:1: ( ( rule__RealDec__VarsAssignment_2_1 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2338:1: ( rule__RealDec__VarsAssignment_2_1 )
            {
             before(grammarAccess.getRealDecAccess().getVarsAssignment_2_1()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2339:1: ( rule__RealDec__VarsAssignment_2_1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2339:2: rule__RealDec__VarsAssignment_2_1
            {
            pushFollow(FOLLOW_rule__RealDec__VarsAssignment_2_1_in_rule__RealDec__Group_2__1__Impl5236);
            rule__RealDec__VarsAssignment_2_1();

            state._fsp--;


            }

             after(grammarAccess.getRealDecAccess().getVarsAssignment_2_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RealDec__Group_2__1__Impl"


    // $ANTLR start "rule__PartitionDec__Group__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2353:1: rule__PartitionDec__Group__0 : rule__PartitionDec__Group__0__Impl rule__PartitionDec__Group__1 ;
    public final void rule__PartitionDec__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2357:1: ( rule__PartitionDec__Group__0__Impl rule__PartitionDec__Group__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2358:2: rule__PartitionDec__Group__0__Impl rule__PartitionDec__Group__1
            {
            pushFollow(FOLLOW_rule__PartitionDec__Group__0__Impl_in_rule__PartitionDec__Group__05270);
            rule__PartitionDec__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__PartitionDec__Group__1_in_rule__PartitionDec__Group__05273);
            rule__PartitionDec__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PartitionDec__Group__0"


    // $ANTLR start "rule__PartitionDec__Group__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2365:1: rule__PartitionDec__Group__0__Impl : ( ( rule__PartitionDec__TypeAssignment_0 ) ) ;
    public final void rule__PartitionDec__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2369:1: ( ( ( rule__PartitionDec__TypeAssignment_0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2370:1: ( ( rule__PartitionDec__TypeAssignment_0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2370:1: ( ( rule__PartitionDec__TypeAssignment_0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2371:1: ( rule__PartitionDec__TypeAssignment_0 )
            {
             before(grammarAccess.getPartitionDecAccess().getTypeAssignment_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2372:1: ( rule__PartitionDec__TypeAssignment_0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2372:2: rule__PartitionDec__TypeAssignment_0
            {
            pushFollow(FOLLOW_rule__PartitionDec__TypeAssignment_0_in_rule__PartitionDec__Group__0__Impl5300);
            rule__PartitionDec__TypeAssignment_0();

            state._fsp--;


            }

             after(grammarAccess.getPartitionDecAccess().getTypeAssignment_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PartitionDec__Group__0__Impl"


    // $ANTLR start "rule__PartitionDec__Group__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2382:1: rule__PartitionDec__Group__1 : rule__PartitionDec__Group__1__Impl rule__PartitionDec__Group__2 ;
    public final void rule__PartitionDec__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2386:1: ( rule__PartitionDec__Group__1__Impl rule__PartitionDec__Group__2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2387:2: rule__PartitionDec__Group__1__Impl rule__PartitionDec__Group__2
            {
            pushFollow(FOLLOW_rule__PartitionDec__Group__1__Impl_in_rule__PartitionDec__Group__15330);
            rule__PartitionDec__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__PartitionDec__Group__2_in_rule__PartitionDec__Group__15333);
            rule__PartitionDec__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PartitionDec__Group__1"


    // $ANTLR start "rule__PartitionDec__Group__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2394:1: rule__PartitionDec__Group__1__Impl : ( ( rule__PartitionDec__VarsAssignment_1 ) ) ;
    public final void rule__PartitionDec__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2398:1: ( ( ( rule__PartitionDec__VarsAssignment_1 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2399:1: ( ( rule__PartitionDec__VarsAssignment_1 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2399:1: ( ( rule__PartitionDec__VarsAssignment_1 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2400:1: ( rule__PartitionDec__VarsAssignment_1 )
            {
             before(grammarAccess.getPartitionDecAccess().getVarsAssignment_1()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2401:1: ( rule__PartitionDec__VarsAssignment_1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2401:2: rule__PartitionDec__VarsAssignment_1
            {
            pushFollow(FOLLOW_rule__PartitionDec__VarsAssignment_1_in_rule__PartitionDec__Group__1__Impl5360);
            rule__PartitionDec__VarsAssignment_1();

            state._fsp--;


            }

             after(grammarAccess.getPartitionDecAccess().getVarsAssignment_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PartitionDec__Group__1__Impl"


    // $ANTLR start "rule__PartitionDec__Group__2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2411:1: rule__PartitionDec__Group__2 : rule__PartitionDec__Group__2__Impl ;
    public final void rule__PartitionDec__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2415:1: ( rule__PartitionDec__Group__2__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2416:2: rule__PartitionDec__Group__2__Impl
            {
            pushFollow(FOLLOW_rule__PartitionDec__Group__2__Impl_in_rule__PartitionDec__Group__25390);
            rule__PartitionDec__Group__2__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PartitionDec__Group__2"


    // $ANTLR start "rule__PartitionDec__Group__2__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2422:1: rule__PartitionDec__Group__2__Impl : ( ( rule__PartitionDec__Group_2__0 )* ) ;
    public final void rule__PartitionDec__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2426:1: ( ( ( rule__PartitionDec__Group_2__0 )* ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2427:1: ( ( rule__PartitionDec__Group_2__0 )* )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2427:1: ( ( rule__PartitionDec__Group_2__0 )* )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2428:1: ( rule__PartitionDec__Group_2__0 )*
            {
             before(grammarAccess.getPartitionDecAccess().getGroup_2()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2429:1: ( rule__PartitionDec__Group_2__0 )*
            loop42:
            do {
                int alt42=2;
                int LA42_0 = input.LA(1);

                if ( (LA42_0==14) ) {
                    alt42=1;
                }


                switch (alt42) {
            	case 1 :
            	    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2429:2: rule__PartitionDec__Group_2__0
            	    {
            	    pushFollow(FOLLOW_rule__PartitionDec__Group_2__0_in_rule__PartitionDec__Group__2__Impl5417);
            	    rule__PartitionDec__Group_2__0();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop42;
                }
            } while (true);

             after(grammarAccess.getPartitionDecAccess().getGroup_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PartitionDec__Group__2__Impl"


    // $ANTLR start "rule__PartitionDec__Group_2__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2445:1: rule__PartitionDec__Group_2__0 : rule__PartitionDec__Group_2__0__Impl rule__PartitionDec__Group_2__1 ;
    public final void rule__PartitionDec__Group_2__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2449:1: ( rule__PartitionDec__Group_2__0__Impl rule__PartitionDec__Group_2__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2450:2: rule__PartitionDec__Group_2__0__Impl rule__PartitionDec__Group_2__1
            {
            pushFollow(FOLLOW_rule__PartitionDec__Group_2__0__Impl_in_rule__PartitionDec__Group_2__05454);
            rule__PartitionDec__Group_2__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__PartitionDec__Group_2__1_in_rule__PartitionDec__Group_2__05457);
            rule__PartitionDec__Group_2__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PartitionDec__Group_2__0"


    // $ANTLR start "rule__PartitionDec__Group_2__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2457:1: rule__PartitionDec__Group_2__0__Impl : ( ',' ) ;
    public final void rule__PartitionDec__Group_2__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2461:1: ( ( ',' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2462:1: ( ',' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2462:1: ( ',' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2463:1: ','
            {
             before(grammarAccess.getPartitionDecAccess().getCommaKeyword_2_0()); 
            match(input,14,FOLLOW_14_in_rule__PartitionDec__Group_2__0__Impl5485); 
             after(grammarAccess.getPartitionDecAccess().getCommaKeyword_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PartitionDec__Group_2__0__Impl"


    // $ANTLR start "rule__PartitionDec__Group_2__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2476:1: rule__PartitionDec__Group_2__1 : rule__PartitionDec__Group_2__1__Impl ;
    public final void rule__PartitionDec__Group_2__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2480:1: ( rule__PartitionDec__Group_2__1__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2481:2: rule__PartitionDec__Group_2__1__Impl
            {
            pushFollow(FOLLOW_rule__PartitionDec__Group_2__1__Impl_in_rule__PartitionDec__Group_2__15516);
            rule__PartitionDec__Group_2__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PartitionDec__Group_2__1"


    // $ANTLR start "rule__PartitionDec__Group_2__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2487:1: rule__PartitionDec__Group_2__1__Impl : ( ( rule__PartitionDec__VarsAssignment_2_1 ) ) ;
    public final void rule__PartitionDec__Group_2__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2491:1: ( ( ( rule__PartitionDec__VarsAssignment_2_1 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2492:1: ( ( rule__PartitionDec__VarsAssignment_2_1 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2492:1: ( ( rule__PartitionDec__VarsAssignment_2_1 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2493:1: ( rule__PartitionDec__VarsAssignment_2_1 )
            {
             before(grammarAccess.getPartitionDecAccess().getVarsAssignment_2_1()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2494:1: ( rule__PartitionDec__VarsAssignment_2_1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2494:2: rule__PartitionDec__VarsAssignment_2_1
            {
            pushFollow(FOLLOW_rule__PartitionDec__VarsAssignment_2_1_in_rule__PartitionDec__Group_2__1__Impl5543);
            rule__PartitionDec__VarsAssignment_2_1();

            state._fsp--;


            }

             after(grammarAccess.getPartitionDecAccess().getVarsAssignment_2_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PartitionDec__Group_2__1__Impl"


    // $ANTLR start "rule__ArrayDec__Group__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2508:1: rule__ArrayDec__Group__0 : rule__ArrayDec__Group__0__Impl rule__ArrayDec__Group__1 ;
    public final void rule__ArrayDec__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2512:1: ( rule__ArrayDec__Group__0__Impl rule__ArrayDec__Group__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2513:2: rule__ArrayDec__Group__0__Impl rule__ArrayDec__Group__1
            {
            pushFollow(FOLLOW_rule__ArrayDec__Group__0__Impl_in_rule__ArrayDec__Group__05577);
            rule__ArrayDec__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__ArrayDec__Group__1_in_rule__ArrayDec__Group__05580);
            rule__ArrayDec__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__Group__0"


    // $ANTLR start "rule__ArrayDec__Group__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2520:1: rule__ArrayDec__Group__0__Impl : ( ( rule__ArrayDec__ArrayAssignment_0 ) ) ;
    public final void rule__ArrayDec__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2524:1: ( ( ( rule__ArrayDec__ArrayAssignment_0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2525:1: ( ( rule__ArrayDec__ArrayAssignment_0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2525:1: ( ( rule__ArrayDec__ArrayAssignment_0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2526:1: ( rule__ArrayDec__ArrayAssignment_0 )
            {
             before(grammarAccess.getArrayDecAccess().getArrayAssignment_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2527:1: ( rule__ArrayDec__ArrayAssignment_0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2527:2: rule__ArrayDec__ArrayAssignment_0
            {
            pushFollow(FOLLOW_rule__ArrayDec__ArrayAssignment_0_in_rule__ArrayDec__Group__0__Impl5607);
            rule__ArrayDec__ArrayAssignment_0();

            state._fsp--;


            }

             after(grammarAccess.getArrayDecAccess().getArrayAssignment_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__Group__0__Impl"


    // $ANTLR start "rule__ArrayDec__Group__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2537:1: rule__ArrayDec__Group__1 : rule__ArrayDec__Group__1__Impl rule__ArrayDec__Group__2 ;
    public final void rule__ArrayDec__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2541:1: ( rule__ArrayDec__Group__1__Impl rule__ArrayDec__Group__2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2542:2: rule__ArrayDec__Group__1__Impl rule__ArrayDec__Group__2
            {
            pushFollow(FOLLOW_rule__ArrayDec__Group__1__Impl_in_rule__ArrayDec__Group__15637);
            rule__ArrayDec__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__ArrayDec__Group__2_in_rule__ArrayDec__Group__15640);
            rule__ArrayDec__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__Group__1"


    // $ANTLR start "rule__ArrayDec__Group__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2549:1: rule__ArrayDec__Group__1__Impl : ( '(' ) ;
    public final void rule__ArrayDec__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2553:1: ( ( '(' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2554:1: ( '(' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2554:1: ( '(' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2555:1: '('
            {
             before(grammarAccess.getArrayDecAccess().getLeftParenthesisKeyword_1()); 
            match(input,15,FOLLOW_15_in_rule__ArrayDec__Group__1__Impl5668); 
             after(grammarAccess.getArrayDecAccess().getLeftParenthesisKeyword_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__Group__1__Impl"


    // $ANTLR start "rule__ArrayDec__Group__2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2568:1: rule__ArrayDec__Group__2 : rule__ArrayDec__Group__2__Impl rule__ArrayDec__Group__3 ;
    public final void rule__ArrayDec__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2572:1: ( rule__ArrayDec__Group__2__Impl rule__ArrayDec__Group__3 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2573:2: rule__ArrayDec__Group__2__Impl rule__ArrayDec__Group__3
            {
            pushFollow(FOLLOW_rule__ArrayDec__Group__2__Impl_in_rule__ArrayDec__Group__25699);
            rule__ArrayDec__Group__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__ArrayDec__Group__3_in_rule__ArrayDec__Group__25702);
            rule__ArrayDec__Group__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__Group__2"


    // $ANTLR start "rule__ArrayDec__Group__2__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2580:1: rule__ArrayDec__Group__2__Impl : ( ( rule__ArrayDec__ColumsAssignment_2 ) ) ;
    public final void rule__ArrayDec__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2584:1: ( ( ( rule__ArrayDec__ColumsAssignment_2 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2585:1: ( ( rule__ArrayDec__ColumsAssignment_2 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2585:1: ( ( rule__ArrayDec__ColumsAssignment_2 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2586:1: ( rule__ArrayDec__ColumsAssignment_2 )
            {
             before(grammarAccess.getArrayDecAccess().getColumsAssignment_2()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2587:1: ( rule__ArrayDec__ColumsAssignment_2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2587:2: rule__ArrayDec__ColumsAssignment_2
            {
            pushFollow(FOLLOW_rule__ArrayDec__ColumsAssignment_2_in_rule__ArrayDec__Group__2__Impl5729);
            rule__ArrayDec__ColumsAssignment_2();

            state._fsp--;


            }

             after(grammarAccess.getArrayDecAccess().getColumsAssignment_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__Group__2__Impl"


    // $ANTLR start "rule__ArrayDec__Group__3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2597:1: rule__ArrayDec__Group__3 : rule__ArrayDec__Group__3__Impl rule__ArrayDec__Group__4 ;
    public final void rule__ArrayDec__Group__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2601:1: ( rule__ArrayDec__Group__3__Impl rule__ArrayDec__Group__4 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2602:2: rule__ArrayDec__Group__3__Impl rule__ArrayDec__Group__4
            {
            pushFollow(FOLLOW_rule__ArrayDec__Group__3__Impl_in_rule__ArrayDec__Group__35759);
            rule__ArrayDec__Group__3__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__ArrayDec__Group__4_in_rule__ArrayDec__Group__35762);
            rule__ArrayDec__Group__4();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__Group__3"


    // $ANTLR start "rule__ArrayDec__Group__3__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2609:1: rule__ArrayDec__Group__3__Impl : ( ( rule__ArrayDec__Group_3__0 )? ) ;
    public final void rule__ArrayDec__Group__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2613:1: ( ( ( rule__ArrayDec__Group_3__0 )? ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2614:1: ( ( rule__ArrayDec__Group_3__0 )? )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2614:1: ( ( rule__ArrayDec__Group_3__0 )? )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2615:1: ( rule__ArrayDec__Group_3__0 )?
            {
             before(grammarAccess.getArrayDecAccess().getGroup_3()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2616:1: ( rule__ArrayDec__Group_3__0 )?
            int alt43=2;
            int LA43_0 = input.LA(1);

            if ( (LA43_0==14) ) {
                alt43=1;
            }
            switch (alt43) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2616:2: rule__ArrayDec__Group_3__0
                    {
                    pushFollow(FOLLOW_rule__ArrayDec__Group_3__0_in_rule__ArrayDec__Group__3__Impl5789);
                    rule__ArrayDec__Group_3__0();

                    state._fsp--;


                    }
                    break;

            }

             after(grammarAccess.getArrayDecAccess().getGroup_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__Group__3__Impl"


    // $ANTLR start "rule__ArrayDec__Group__4"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2626:1: rule__ArrayDec__Group__4 : rule__ArrayDec__Group__4__Impl rule__ArrayDec__Group__5 ;
    public final void rule__ArrayDec__Group__4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2630:1: ( rule__ArrayDec__Group__4__Impl rule__ArrayDec__Group__5 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2631:2: rule__ArrayDec__Group__4__Impl rule__ArrayDec__Group__5
            {
            pushFollow(FOLLOW_rule__ArrayDec__Group__4__Impl_in_rule__ArrayDec__Group__45820);
            rule__ArrayDec__Group__4__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__ArrayDec__Group__5_in_rule__ArrayDec__Group__45823);
            rule__ArrayDec__Group__5();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__Group__4"


    // $ANTLR start "rule__ArrayDec__Group__4__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2638:1: rule__ArrayDec__Group__4__Impl : ( ')' ) ;
    public final void rule__ArrayDec__Group__4__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2642:1: ( ( ')' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2643:1: ( ')' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2643:1: ( ')' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2644:1: ')'
            {
             before(grammarAccess.getArrayDecAccess().getRightParenthesisKeyword_4()); 
            match(input,16,FOLLOW_16_in_rule__ArrayDec__Group__4__Impl5851); 
             after(grammarAccess.getArrayDecAccess().getRightParenthesisKeyword_4()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__Group__4__Impl"


    // $ANTLR start "rule__ArrayDec__Group__5"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2657:1: rule__ArrayDec__Group__5 : rule__ArrayDec__Group__5__Impl rule__ArrayDec__Group__6 ;
    public final void rule__ArrayDec__Group__5() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2661:1: ( rule__ArrayDec__Group__5__Impl rule__ArrayDec__Group__6 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2662:2: rule__ArrayDec__Group__5__Impl rule__ArrayDec__Group__6
            {
            pushFollow(FOLLOW_rule__ArrayDec__Group__5__Impl_in_rule__ArrayDec__Group__55882);
            rule__ArrayDec__Group__5__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__ArrayDec__Group__6_in_rule__ArrayDec__Group__55885);
            rule__ArrayDec__Group__6();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__Group__5"


    // $ANTLR start "rule__ArrayDec__Group__5__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2669:1: rule__ArrayDec__Group__5__Impl : ( ( rule__ArrayDec__TypeAssignment_5 ) ) ;
    public final void rule__ArrayDec__Group__5__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2673:1: ( ( ( rule__ArrayDec__TypeAssignment_5 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2674:1: ( ( rule__ArrayDec__TypeAssignment_5 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2674:1: ( ( rule__ArrayDec__TypeAssignment_5 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2675:1: ( rule__ArrayDec__TypeAssignment_5 )
            {
             before(grammarAccess.getArrayDecAccess().getTypeAssignment_5()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2676:1: ( rule__ArrayDec__TypeAssignment_5 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2676:2: rule__ArrayDec__TypeAssignment_5
            {
            pushFollow(FOLLOW_rule__ArrayDec__TypeAssignment_5_in_rule__ArrayDec__Group__5__Impl5912);
            rule__ArrayDec__TypeAssignment_5();

            state._fsp--;


            }

             after(grammarAccess.getArrayDecAccess().getTypeAssignment_5()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__Group__5__Impl"


    // $ANTLR start "rule__ArrayDec__Group__6"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2686:1: rule__ArrayDec__Group__6 : rule__ArrayDec__Group__6__Impl rule__ArrayDec__Group__7 ;
    public final void rule__ArrayDec__Group__6() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2690:1: ( rule__ArrayDec__Group__6__Impl rule__ArrayDec__Group__7 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2691:2: rule__ArrayDec__Group__6__Impl rule__ArrayDec__Group__7
            {
            pushFollow(FOLLOW_rule__ArrayDec__Group__6__Impl_in_rule__ArrayDec__Group__65942);
            rule__ArrayDec__Group__6__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__ArrayDec__Group__7_in_rule__ArrayDec__Group__65945);
            rule__ArrayDec__Group__7();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__Group__6"


    // $ANTLR start "rule__ArrayDec__Group__6__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2698:1: rule__ArrayDec__Group__6__Impl : ( ( rule__ArrayDec__ArrayVarsAssignment_6 ) ) ;
    public final void rule__ArrayDec__Group__6__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2702:1: ( ( ( rule__ArrayDec__ArrayVarsAssignment_6 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2703:1: ( ( rule__ArrayDec__ArrayVarsAssignment_6 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2703:1: ( ( rule__ArrayDec__ArrayVarsAssignment_6 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2704:1: ( rule__ArrayDec__ArrayVarsAssignment_6 )
            {
             before(grammarAccess.getArrayDecAccess().getArrayVarsAssignment_6()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2705:1: ( rule__ArrayDec__ArrayVarsAssignment_6 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2705:2: rule__ArrayDec__ArrayVarsAssignment_6
            {
            pushFollow(FOLLOW_rule__ArrayDec__ArrayVarsAssignment_6_in_rule__ArrayDec__Group__6__Impl5972);
            rule__ArrayDec__ArrayVarsAssignment_6();

            state._fsp--;


            }

             after(grammarAccess.getArrayDecAccess().getArrayVarsAssignment_6()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__Group__6__Impl"


    // $ANTLR start "rule__ArrayDec__Group__7"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2715:1: rule__ArrayDec__Group__7 : rule__ArrayDec__Group__7__Impl ;
    public final void rule__ArrayDec__Group__7() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2719:1: ( rule__ArrayDec__Group__7__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2720:2: rule__ArrayDec__Group__7__Impl
            {
            pushFollow(FOLLOW_rule__ArrayDec__Group__7__Impl_in_rule__ArrayDec__Group__76002);
            rule__ArrayDec__Group__7__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__Group__7"


    // $ANTLR start "rule__ArrayDec__Group__7__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2726:1: rule__ArrayDec__Group__7__Impl : ( ( rule__ArrayDec__Group_7__0 )* ) ;
    public final void rule__ArrayDec__Group__7__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2730:1: ( ( ( rule__ArrayDec__Group_7__0 )* ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2731:1: ( ( rule__ArrayDec__Group_7__0 )* )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2731:1: ( ( rule__ArrayDec__Group_7__0 )* )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2732:1: ( rule__ArrayDec__Group_7__0 )*
            {
             before(grammarAccess.getArrayDecAccess().getGroup_7()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2733:1: ( rule__ArrayDec__Group_7__0 )*
            loop44:
            do {
                int alt44=2;
                int LA44_0 = input.LA(1);

                if ( (LA44_0==14) ) {
                    alt44=1;
                }


                switch (alt44) {
            	case 1 :
            	    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2733:2: rule__ArrayDec__Group_7__0
            	    {
            	    pushFollow(FOLLOW_rule__ArrayDec__Group_7__0_in_rule__ArrayDec__Group__7__Impl6029);
            	    rule__ArrayDec__Group_7__0();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop44;
                }
            } while (true);

             after(grammarAccess.getArrayDecAccess().getGroup_7()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__Group__7__Impl"


    // $ANTLR start "rule__ArrayDec__Group_3__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2759:1: rule__ArrayDec__Group_3__0 : rule__ArrayDec__Group_3__0__Impl rule__ArrayDec__Group_3__1 ;
    public final void rule__ArrayDec__Group_3__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2763:1: ( rule__ArrayDec__Group_3__0__Impl rule__ArrayDec__Group_3__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2764:2: rule__ArrayDec__Group_3__0__Impl rule__ArrayDec__Group_3__1
            {
            pushFollow(FOLLOW_rule__ArrayDec__Group_3__0__Impl_in_rule__ArrayDec__Group_3__06076);
            rule__ArrayDec__Group_3__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__ArrayDec__Group_3__1_in_rule__ArrayDec__Group_3__06079);
            rule__ArrayDec__Group_3__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__Group_3__0"


    // $ANTLR start "rule__ArrayDec__Group_3__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2771:1: rule__ArrayDec__Group_3__0__Impl : ( ',' ) ;
    public final void rule__ArrayDec__Group_3__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2775:1: ( ( ',' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2776:1: ( ',' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2776:1: ( ',' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2777:1: ','
            {
             before(grammarAccess.getArrayDecAccess().getCommaKeyword_3_0()); 
            match(input,14,FOLLOW_14_in_rule__ArrayDec__Group_3__0__Impl6107); 
             after(grammarAccess.getArrayDecAccess().getCommaKeyword_3_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__Group_3__0__Impl"


    // $ANTLR start "rule__ArrayDec__Group_3__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2790:1: rule__ArrayDec__Group_3__1 : rule__ArrayDec__Group_3__1__Impl ;
    public final void rule__ArrayDec__Group_3__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2794:1: ( rule__ArrayDec__Group_3__1__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2795:2: rule__ArrayDec__Group_3__1__Impl
            {
            pushFollow(FOLLOW_rule__ArrayDec__Group_3__1__Impl_in_rule__ArrayDec__Group_3__16138);
            rule__ArrayDec__Group_3__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__Group_3__1"


    // $ANTLR start "rule__ArrayDec__Group_3__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2801:1: rule__ArrayDec__Group_3__1__Impl : ( ( rule__ArrayDec__RowsAssignment_3_1 ) ) ;
    public final void rule__ArrayDec__Group_3__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2805:1: ( ( ( rule__ArrayDec__RowsAssignment_3_1 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2806:1: ( ( rule__ArrayDec__RowsAssignment_3_1 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2806:1: ( ( rule__ArrayDec__RowsAssignment_3_1 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2807:1: ( rule__ArrayDec__RowsAssignment_3_1 )
            {
             before(grammarAccess.getArrayDecAccess().getRowsAssignment_3_1()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2808:1: ( rule__ArrayDec__RowsAssignment_3_1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2808:2: rule__ArrayDec__RowsAssignment_3_1
            {
            pushFollow(FOLLOW_rule__ArrayDec__RowsAssignment_3_1_in_rule__ArrayDec__Group_3__1__Impl6165);
            rule__ArrayDec__RowsAssignment_3_1();

            state._fsp--;


            }

             after(grammarAccess.getArrayDecAccess().getRowsAssignment_3_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__Group_3__1__Impl"


    // $ANTLR start "rule__ArrayDec__Group_7__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2822:1: rule__ArrayDec__Group_7__0 : rule__ArrayDec__Group_7__0__Impl rule__ArrayDec__Group_7__1 ;
    public final void rule__ArrayDec__Group_7__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2826:1: ( rule__ArrayDec__Group_7__0__Impl rule__ArrayDec__Group_7__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2827:2: rule__ArrayDec__Group_7__0__Impl rule__ArrayDec__Group_7__1
            {
            pushFollow(FOLLOW_rule__ArrayDec__Group_7__0__Impl_in_rule__ArrayDec__Group_7__06199);
            rule__ArrayDec__Group_7__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__ArrayDec__Group_7__1_in_rule__ArrayDec__Group_7__06202);
            rule__ArrayDec__Group_7__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__Group_7__0"


    // $ANTLR start "rule__ArrayDec__Group_7__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2834:1: rule__ArrayDec__Group_7__0__Impl : ( ',' ) ;
    public final void rule__ArrayDec__Group_7__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2838:1: ( ( ',' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2839:1: ( ',' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2839:1: ( ',' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2840:1: ','
            {
             before(grammarAccess.getArrayDecAccess().getCommaKeyword_7_0()); 
            match(input,14,FOLLOW_14_in_rule__ArrayDec__Group_7__0__Impl6230); 
             after(grammarAccess.getArrayDecAccess().getCommaKeyword_7_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__Group_7__0__Impl"


    // $ANTLR start "rule__ArrayDec__Group_7__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2853:1: rule__ArrayDec__Group_7__1 : rule__ArrayDec__Group_7__1__Impl ;
    public final void rule__ArrayDec__Group_7__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2857:1: ( rule__ArrayDec__Group_7__1__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2858:2: rule__ArrayDec__Group_7__1__Impl
            {
            pushFollow(FOLLOW_rule__ArrayDec__Group_7__1__Impl_in_rule__ArrayDec__Group_7__16261);
            rule__ArrayDec__Group_7__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__Group_7__1"


    // $ANTLR start "rule__ArrayDec__Group_7__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2864:1: rule__ArrayDec__Group_7__1__Impl : ( ( rule__ArrayDec__ArrayVarsAssignment_7_1 ) ) ;
    public final void rule__ArrayDec__Group_7__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2868:1: ( ( ( rule__ArrayDec__ArrayVarsAssignment_7_1 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2869:1: ( ( rule__ArrayDec__ArrayVarsAssignment_7_1 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2869:1: ( ( rule__ArrayDec__ArrayVarsAssignment_7_1 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2870:1: ( rule__ArrayDec__ArrayVarsAssignment_7_1 )
            {
             before(grammarAccess.getArrayDecAccess().getArrayVarsAssignment_7_1()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2871:1: ( rule__ArrayDec__ArrayVarsAssignment_7_1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2871:2: rule__ArrayDec__ArrayVarsAssignment_7_1
            {
            pushFollow(FOLLOW_rule__ArrayDec__ArrayVarsAssignment_7_1_in_rule__ArrayDec__Group_7__1__Impl6288);
            rule__ArrayDec__ArrayVarsAssignment_7_1();

            state._fsp--;


            }

             after(grammarAccess.getArrayDecAccess().getArrayVarsAssignment_7_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__Group_7__1__Impl"


    // $ANTLR start "rule__Assignment__Group__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2885:1: rule__Assignment__Group__0 : rule__Assignment__Group__0__Impl rule__Assignment__Group__1 ;
    public final void rule__Assignment__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2889:1: ( rule__Assignment__Group__0__Impl rule__Assignment__Group__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2890:2: rule__Assignment__Group__0__Impl rule__Assignment__Group__1
            {
            pushFollow(FOLLOW_rule__Assignment__Group__0__Impl_in_rule__Assignment__Group__06322);
            rule__Assignment__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Assignment__Group__1_in_rule__Assignment__Group__06325);
            rule__Assignment__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Assignment__Group__0"


    // $ANTLR start "rule__Assignment__Group__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2897:1: rule__Assignment__Group__0__Impl : ( ( rule__Assignment__Alternatives_0 ) ) ;
    public final void rule__Assignment__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2901:1: ( ( ( rule__Assignment__Alternatives_0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2902:1: ( ( rule__Assignment__Alternatives_0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2902:1: ( ( rule__Assignment__Alternatives_0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2903:1: ( rule__Assignment__Alternatives_0 )
            {
             before(grammarAccess.getAssignmentAccess().getAlternatives_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2904:1: ( rule__Assignment__Alternatives_0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2904:2: rule__Assignment__Alternatives_0
            {
            pushFollow(FOLLOW_rule__Assignment__Alternatives_0_in_rule__Assignment__Group__0__Impl6352);
            rule__Assignment__Alternatives_0();

            state._fsp--;


            }

             after(grammarAccess.getAssignmentAccess().getAlternatives_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Assignment__Group__0__Impl"


    // $ANTLR start "rule__Assignment__Group__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2914:1: rule__Assignment__Group__1 : rule__Assignment__Group__1__Impl rule__Assignment__Group__2 ;
    public final void rule__Assignment__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2918:1: ( rule__Assignment__Group__1__Impl rule__Assignment__Group__2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2919:2: rule__Assignment__Group__1__Impl rule__Assignment__Group__2
            {
            pushFollow(FOLLOW_rule__Assignment__Group__1__Impl_in_rule__Assignment__Group__16382);
            rule__Assignment__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Assignment__Group__2_in_rule__Assignment__Group__16385);
            rule__Assignment__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Assignment__Group__1"


    // $ANTLR start "rule__Assignment__Group__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2926:1: rule__Assignment__Group__1__Impl : ( '=' ) ;
    public final void rule__Assignment__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2930:1: ( ( '=' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2931:1: ( '=' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2931:1: ( '=' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2932:1: '='
            {
             before(grammarAccess.getAssignmentAccess().getEqualsSignKeyword_1()); 
            match(input,17,FOLLOW_17_in_rule__Assignment__Group__1__Impl6413); 
             after(grammarAccess.getAssignmentAccess().getEqualsSignKeyword_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Assignment__Group__1__Impl"


    // $ANTLR start "rule__Assignment__Group__2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2945:1: rule__Assignment__Group__2 : rule__Assignment__Group__2__Impl ;
    public final void rule__Assignment__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2949:1: ( rule__Assignment__Group__2__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2950:2: rule__Assignment__Group__2__Impl
            {
            pushFollow(FOLLOW_rule__Assignment__Group__2__Impl_in_rule__Assignment__Group__26444);
            rule__Assignment__Group__2__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Assignment__Group__2"


    // $ANTLR start "rule__Assignment__Group__2__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2956:1: rule__Assignment__Group__2__Impl : ( ( rule__Assignment__Alternatives_2 ) ) ;
    public final void rule__Assignment__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2960:1: ( ( ( rule__Assignment__Alternatives_2 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2961:1: ( ( rule__Assignment__Alternatives_2 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2961:1: ( ( rule__Assignment__Alternatives_2 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2962:1: ( rule__Assignment__Alternatives_2 )
            {
             before(grammarAccess.getAssignmentAccess().getAlternatives_2()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2963:1: ( rule__Assignment__Alternatives_2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2963:2: rule__Assignment__Alternatives_2
            {
            pushFollow(FOLLOW_rule__Assignment__Alternatives_2_in_rule__Assignment__Group__2__Impl6471);
            rule__Assignment__Alternatives_2();

            state._fsp--;


            }

             after(grammarAccess.getAssignmentAccess().getAlternatives_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Assignment__Group__2__Impl"


    // $ANTLR start "rule__Assignment__Group_0_1__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2979:1: rule__Assignment__Group_0_1__0 : rule__Assignment__Group_0_1__0__Impl rule__Assignment__Group_0_1__1 ;
    public final void rule__Assignment__Group_0_1__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2983:1: ( rule__Assignment__Group_0_1__0__Impl rule__Assignment__Group_0_1__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2984:2: rule__Assignment__Group_0_1__0__Impl rule__Assignment__Group_0_1__1
            {
            pushFollow(FOLLOW_rule__Assignment__Group_0_1__0__Impl_in_rule__Assignment__Group_0_1__06507);
            rule__Assignment__Group_0_1__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Assignment__Group_0_1__1_in_rule__Assignment__Group_0_1__06510);
            rule__Assignment__Group_0_1__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Assignment__Group_0_1__0"


    // $ANTLR start "rule__Assignment__Group_0_1__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2991:1: rule__Assignment__Group_0_1__0__Impl : ( ( rule__Assignment__VariablesAssignment_0_1_0 ) ) ;
    public final void rule__Assignment__Group_0_1__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2995:1: ( ( ( rule__Assignment__VariablesAssignment_0_1_0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2996:1: ( ( rule__Assignment__VariablesAssignment_0_1_0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2996:1: ( ( rule__Assignment__VariablesAssignment_0_1_0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2997:1: ( rule__Assignment__VariablesAssignment_0_1_0 )
            {
             before(grammarAccess.getAssignmentAccess().getVariablesAssignment_0_1_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2998:1: ( rule__Assignment__VariablesAssignment_0_1_0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:2998:2: rule__Assignment__VariablesAssignment_0_1_0
            {
            pushFollow(FOLLOW_rule__Assignment__VariablesAssignment_0_1_0_in_rule__Assignment__Group_0_1__0__Impl6537);
            rule__Assignment__VariablesAssignment_0_1_0();

            state._fsp--;


            }

             after(grammarAccess.getAssignmentAccess().getVariablesAssignment_0_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Assignment__Group_0_1__0__Impl"


    // $ANTLR start "rule__Assignment__Group_0_1__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3008:1: rule__Assignment__Group_0_1__1 : rule__Assignment__Group_0_1__1__Impl ;
    public final void rule__Assignment__Group_0_1__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3012:1: ( rule__Assignment__Group_0_1__1__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3013:2: rule__Assignment__Group_0_1__1__Impl
            {
            pushFollow(FOLLOW_rule__Assignment__Group_0_1__1__Impl_in_rule__Assignment__Group_0_1__16567);
            rule__Assignment__Group_0_1__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Assignment__Group_0_1__1"


    // $ANTLR start "rule__Assignment__Group_0_1__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3019:1: rule__Assignment__Group_0_1__1__Impl : ( ( rule__Assignment__Group_0_1_1__0 )* ) ;
    public final void rule__Assignment__Group_0_1__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3023:1: ( ( ( rule__Assignment__Group_0_1_1__0 )* ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3024:1: ( ( rule__Assignment__Group_0_1_1__0 )* )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3024:1: ( ( rule__Assignment__Group_0_1_1__0 )* )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3025:1: ( rule__Assignment__Group_0_1_1__0 )*
            {
             before(grammarAccess.getAssignmentAccess().getGroup_0_1_1()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3026:1: ( rule__Assignment__Group_0_1_1__0 )*
            loop45:
            do {
                int alt45=2;
                int LA45_0 = input.LA(1);

                if ( (LA45_0==14) ) {
                    alt45=1;
                }


                switch (alt45) {
            	case 1 :
            	    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3026:2: rule__Assignment__Group_0_1_1__0
            	    {
            	    pushFollow(FOLLOW_rule__Assignment__Group_0_1_1__0_in_rule__Assignment__Group_0_1__1__Impl6594);
            	    rule__Assignment__Group_0_1_1__0();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop45;
                }
            } while (true);

             after(grammarAccess.getAssignmentAccess().getGroup_0_1_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Assignment__Group_0_1__1__Impl"


    // $ANTLR start "rule__Assignment__Group_0_1_1__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3040:1: rule__Assignment__Group_0_1_1__0 : rule__Assignment__Group_0_1_1__0__Impl rule__Assignment__Group_0_1_1__1 ;
    public final void rule__Assignment__Group_0_1_1__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3044:1: ( rule__Assignment__Group_0_1_1__0__Impl rule__Assignment__Group_0_1_1__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3045:2: rule__Assignment__Group_0_1_1__0__Impl rule__Assignment__Group_0_1_1__1
            {
            pushFollow(FOLLOW_rule__Assignment__Group_0_1_1__0__Impl_in_rule__Assignment__Group_0_1_1__06629);
            rule__Assignment__Group_0_1_1__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Assignment__Group_0_1_1__1_in_rule__Assignment__Group_0_1_1__06632);
            rule__Assignment__Group_0_1_1__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Assignment__Group_0_1_1__0"


    // $ANTLR start "rule__Assignment__Group_0_1_1__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3052:1: rule__Assignment__Group_0_1_1__0__Impl : ( ',' ) ;
    public final void rule__Assignment__Group_0_1_1__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3056:1: ( ( ',' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3057:1: ( ',' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3057:1: ( ',' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3058:1: ','
            {
             before(grammarAccess.getAssignmentAccess().getCommaKeyword_0_1_1_0()); 
            match(input,14,FOLLOW_14_in_rule__Assignment__Group_0_1_1__0__Impl6660); 
             after(grammarAccess.getAssignmentAccess().getCommaKeyword_0_1_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Assignment__Group_0_1_1__0__Impl"


    // $ANTLR start "rule__Assignment__Group_0_1_1__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3071:1: rule__Assignment__Group_0_1_1__1 : rule__Assignment__Group_0_1_1__1__Impl ;
    public final void rule__Assignment__Group_0_1_1__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3075:1: ( rule__Assignment__Group_0_1_1__1__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3076:2: rule__Assignment__Group_0_1_1__1__Impl
            {
            pushFollow(FOLLOW_rule__Assignment__Group_0_1_1__1__Impl_in_rule__Assignment__Group_0_1_1__16691);
            rule__Assignment__Group_0_1_1__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Assignment__Group_0_1_1__1"


    // $ANTLR start "rule__Assignment__Group_0_1_1__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3082:1: rule__Assignment__Group_0_1_1__1__Impl : ( ( rule__Assignment__VariablesAssignment_0_1_1_1 ) ) ;
    public final void rule__Assignment__Group_0_1_1__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3086:1: ( ( ( rule__Assignment__VariablesAssignment_0_1_1_1 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3087:1: ( ( rule__Assignment__VariablesAssignment_0_1_1_1 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3087:1: ( ( rule__Assignment__VariablesAssignment_0_1_1_1 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3088:1: ( rule__Assignment__VariablesAssignment_0_1_1_1 )
            {
             before(grammarAccess.getAssignmentAccess().getVariablesAssignment_0_1_1_1()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3089:1: ( rule__Assignment__VariablesAssignment_0_1_1_1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3089:2: rule__Assignment__VariablesAssignment_0_1_1_1
            {
            pushFollow(FOLLOW_rule__Assignment__VariablesAssignment_0_1_1_1_in_rule__Assignment__Group_0_1_1__1__Impl6718);
            rule__Assignment__VariablesAssignment_0_1_1_1();

            state._fsp--;


            }

             after(grammarAccess.getAssignmentAccess().getVariablesAssignment_0_1_1_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Assignment__Group_0_1_1__1__Impl"


    // $ANTLR start "rule__Size__Group__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3103:1: rule__Size__Group__0 : rule__Size__Group__0__Impl rule__Size__Group__1 ;
    public final void rule__Size__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3107:1: ( rule__Size__Group__0__Impl rule__Size__Group__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3108:2: rule__Size__Group__0__Impl rule__Size__Group__1
            {
            pushFollow(FOLLOW_rule__Size__Group__0__Impl_in_rule__Size__Group__06752);
            rule__Size__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Size__Group__1_in_rule__Size__Group__06755);
            rule__Size__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Size__Group__0"


    // $ANTLR start "rule__Size__Group__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3115:1: rule__Size__Group__0__Impl : ( ( rule__Size__Alternatives_0 ) ) ;
    public final void rule__Size__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3119:1: ( ( ( rule__Size__Alternatives_0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3120:1: ( ( rule__Size__Alternatives_0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3120:1: ( ( rule__Size__Alternatives_0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3121:1: ( rule__Size__Alternatives_0 )
            {
             before(grammarAccess.getSizeAccess().getAlternatives_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3122:1: ( rule__Size__Alternatives_0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3122:2: rule__Size__Alternatives_0
            {
            pushFollow(FOLLOW_rule__Size__Alternatives_0_in_rule__Size__Group__0__Impl6782);
            rule__Size__Alternatives_0();

            state._fsp--;


            }

             after(grammarAccess.getSizeAccess().getAlternatives_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Size__Group__0__Impl"


    // $ANTLR start "rule__Size__Group__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3132:1: rule__Size__Group__1 : rule__Size__Group__1__Impl rule__Size__Group__2 ;
    public final void rule__Size__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3136:1: ( rule__Size__Group__1__Impl rule__Size__Group__2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3137:2: rule__Size__Group__1__Impl rule__Size__Group__2
            {
            pushFollow(FOLLOW_rule__Size__Group__1__Impl_in_rule__Size__Group__16812);
            rule__Size__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Size__Group__2_in_rule__Size__Group__16815);
            rule__Size__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Size__Group__1"


    // $ANTLR start "rule__Size__Group__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3144:1: rule__Size__Group__1__Impl : ( '.' ) ;
    public final void rule__Size__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3148:1: ( ( '.' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3149:1: ( '.' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3149:1: ( '.' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3150:1: '.'
            {
             before(grammarAccess.getSizeAccess().getFullStopKeyword_1()); 
            match(input,18,FOLLOW_18_in_rule__Size__Group__1__Impl6843); 
             after(grammarAccess.getSizeAccess().getFullStopKeyword_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Size__Group__1__Impl"


    // $ANTLR start "rule__Size__Group__2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3163:1: rule__Size__Group__2 : rule__Size__Group__2__Impl rule__Size__Group__3 ;
    public final void rule__Size__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3167:1: ( rule__Size__Group__2__Impl rule__Size__Group__3 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3168:2: rule__Size__Group__2__Impl rule__Size__Group__3
            {
            pushFollow(FOLLOW_rule__Size__Group__2__Impl_in_rule__Size__Group__26874);
            rule__Size__Group__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Size__Group__3_in_rule__Size__Group__26877);
            rule__Size__Group__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Size__Group__2"


    // $ANTLR start "rule__Size__Group__2__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3175:1: rule__Size__Group__2__Impl : ( ( rule__Size__MethodAssignment_2 ) ) ;
    public final void rule__Size__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3179:1: ( ( ( rule__Size__MethodAssignment_2 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3180:1: ( ( rule__Size__MethodAssignment_2 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3180:1: ( ( rule__Size__MethodAssignment_2 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3181:1: ( rule__Size__MethodAssignment_2 )
            {
             before(grammarAccess.getSizeAccess().getMethodAssignment_2()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3182:1: ( rule__Size__MethodAssignment_2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3182:2: rule__Size__MethodAssignment_2
            {
            pushFollow(FOLLOW_rule__Size__MethodAssignment_2_in_rule__Size__Group__2__Impl6904);
            rule__Size__MethodAssignment_2();

            state._fsp--;


            }

             after(grammarAccess.getSizeAccess().getMethodAssignment_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Size__Group__2__Impl"


    // $ANTLR start "rule__Size__Group__3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3192:1: rule__Size__Group__3 : rule__Size__Group__3__Impl rule__Size__Group__4 ;
    public final void rule__Size__Group__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3196:1: ( rule__Size__Group__3__Impl rule__Size__Group__4 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3197:2: rule__Size__Group__3__Impl rule__Size__Group__4
            {
            pushFollow(FOLLOW_rule__Size__Group__3__Impl_in_rule__Size__Group__36934);
            rule__Size__Group__3__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Size__Group__4_in_rule__Size__Group__36937);
            rule__Size__Group__4();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Size__Group__3"


    // $ANTLR start "rule__Size__Group__3__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3204:1: rule__Size__Group__3__Impl : ( '(' ) ;
    public final void rule__Size__Group__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3208:1: ( ( '(' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3209:1: ( '(' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3209:1: ( '(' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3210:1: '('
            {
             before(grammarAccess.getSizeAccess().getLeftParenthesisKeyword_3()); 
            match(input,15,FOLLOW_15_in_rule__Size__Group__3__Impl6965); 
             after(grammarAccess.getSizeAccess().getLeftParenthesisKeyword_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Size__Group__3__Impl"


    // $ANTLR start "rule__Size__Group__4"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3223:1: rule__Size__Group__4 : rule__Size__Group__4__Impl ;
    public final void rule__Size__Group__4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3227:1: ( rule__Size__Group__4__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3228:2: rule__Size__Group__4__Impl
            {
            pushFollow(FOLLOW_rule__Size__Group__4__Impl_in_rule__Size__Group__46996);
            rule__Size__Group__4__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Size__Group__4"


    // $ANTLR start "rule__Size__Group__4__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3234:1: rule__Size__Group__4__Impl : ( ')' ) ;
    public final void rule__Size__Group__4__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3238:1: ( ( ')' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3239:1: ( ')' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3239:1: ( ')' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3240:1: ')'
            {
             before(grammarAccess.getSizeAccess().getRightParenthesisKeyword_4()); 
            match(input,16,FOLLOW_16_in_rule__Size__Group__4__Impl7024); 
             after(grammarAccess.getSizeAccess().getRightParenthesisKeyword_4()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Size__Group__4__Impl"


    // $ANTLR start "rule__Add__Group__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3263:1: rule__Add__Group__0 : rule__Add__Group__0__Impl rule__Add__Group__1 ;
    public final void rule__Add__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3267:1: ( rule__Add__Group__0__Impl rule__Add__Group__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3268:2: rule__Add__Group__0__Impl rule__Add__Group__1
            {
            pushFollow(FOLLOW_rule__Add__Group__0__Impl_in_rule__Add__Group__07065);
            rule__Add__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Add__Group__1_in_rule__Add__Group__07068);
            rule__Add__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__Group__0"


    // $ANTLR start "rule__Add__Group__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3275:1: rule__Add__Group__0__Impl : ( ( rule__Add__Alternatives_0 ) ) ;
    public final void rule__Add__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3279:1: ( ( ( rule__Add__Alternatives_0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3280:1: ( ( rule__Add__Alternatives_0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3280:1: ( ( rule__Add__Alternatives_0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3281:1: ( rule__Add__Alternatives_0 )
            {
             before(grammarAccess.getAddAccess().getAlternatives_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3282:1: ( rule__Add__Alternatives_0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3282:2: rule__Add__Alternatives_0
            {
            pushFollow(FOLLOW_rule__Add__Alternatives_0_in_rule__Add__Group__0__Impl7095);
            rule__Add__Alternatives_0();

            state._fsp--;


            }

             after(grammarAccess.getAddAccess().getAlternatives_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__Group__0__Impl"


    // $ANTLR start "rule__Add__Group__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3292:1: rule__Add__Group__1 : rule__Add__Group__1__Impl rule__Add__Group__2 ;
    public final void rule__Add__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3296:1: ( rule__Add__Group__1__Impl rule__Add__Group__2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3297:2: rule__Add__Group__1__Impl rule__Add__Group__2
            {
            pushFollow(FOLLOW_rule__Add__Group__1__Impl_in_rule__Add__Group__17125);
            rule__Add__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Add__Group__2_in_rule__Add__Group__17128);
            rule__Add__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__Group__1"


    // $ANTLR start "rule__Add__Group__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3304:1: rule__Add__Group__1__Impl : ( '.' ) ;
    public final void rule__Add__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3308:1: ( ( '.' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3309:1: ( '.' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3309:1: ( '.' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3310:1: '.'
            {
             before(grammarAccess.getAddAccess().getFullStopKeyword_1()); 
            match(input,18,FOLLOW_18_in_rule__Add__Group__1__Impl7156); 
             after(grammarAccess.getAddAccess().getFullStopKeyword_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__Group__1__Impl"


    // $ANTLR start "rule__Add__Group__2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3323:1: rule__Add__Group__2 : rule__Add__Group__2__Impl rule__Add__Group__3 ;
    public final void rule__Add__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3327:1: ( rule__Add__Group__2__Impl rule__Add__Group__3 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3328:2: rule__Add__Group__2__Impl rule__Add__Group__3
            {
            pushFollow(FOLLOW_rule__Add__Group__2__Impl_in_rule__Add__Group__27187);
            rule__Add__Group__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Add__Group__3_in_rule__Add__Group__27190);
            rule__Add__Group__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__Group__2"


    // $ANTLR start "rule__Add__Group__2__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3335:1: rule__Add__Group__2__Impl : ( ( rule__Add__MethodAssignment_2 ) ) ;
    public final void rule__Add__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3339:1: ( ( ( rule__Add__MethodAssignment_2 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3340:1: ( ( rule__Add__MethodAssignment_2 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3340:1: ( ( rule__Add__MethodAssignment_2 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3341:1: ( rule__Add__MethodAssignment_2 )
            {
             before(grammarAccess.getAddAccess().getMethodAssignment_2()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3342:1: ( rule__Add__MethodAssignment_2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3342:2: rule__Add__MethodAssignment_2
            {
            pushFollow(FOLLOW_rule__Add__MethodAssignment_2_in_rule__Add__Group__2__Impl7217);
            rule__Add__MethodAssignment_2();

            state._fsp--;


            }

             after(grammarAccess.getAddAccess().getMethodAssignment_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__Group__2__Impl"


    // $ANTLR start "rule__Add__Group__3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3352:1: rule__Add__Group__3 : rule__Add__Group__3__Impl rule__Add__Group__4 ;
    public final void rule__Add__Group__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3356:1: ( rule__Add__Group__3__Impl rule__Add__Group__4 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3357:2: rule__Add__Group__3__Impl rule__Add__Group__4
            {
            pushFollow(FOLLOW_rule__Add__Group__3__Impl_in_rule__Add__Group__37247);
            rule__Add__Group__3__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Add__Group__4_in_rule__Add__Group__37250);
            rule__Add__Group__4();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__Group__3"


    // $ANTLR start "rule__Add__Group__3__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3364:1: rule__Add__Group__3__Impl : ( '(' ) ;
    public final void rule__Add__Group__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3368:1: ( ( '(' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3369:1: ( '(' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3369:1: ( '(' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3370:1: '('
            {
             before(grammarAccess.getAddAccess().getLeftParenthesisKeyword_3()); 
            match(input,15,FOLLOW_15_in_rule__Add__Group__3__Impl7278); 
             after(grammarAccess.getAddAccess().getLeftParenthesisKeyword_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__Group__3__Impl"


    // $ANTLR start "rule__Add__Group__4"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3383:1: rule__Add__Group__4 : rule__Add__Group__4__Impl rule__Add__Group__5 ;
    public final void rule__Add__Group__4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3387:1: ( rule__Add__Group__4__Impl rule__Add__Group__5 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3388:2: rule__Add__Group__4__Impl rule__Add__Group__5
            {
            pushFollow(FOLLOW_rule__Add__Group__4__Impl_in_rule__Add__Group__47309);
            rule__Add__Group__4__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Add__Group__5_in_rule__Add__Group__47312);
            rule__Add__Group__5();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__Group__4"


    // $ANTLR start "rule__Add__Group__4__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3395:1: rule__Add__Group__4__Impl : ( ( rule__Add__Alternatives_4 ) ) ;
    public final void rule__Add__Group__4__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3399:1: ( ( ( rule__Add__Alternatives_4 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3400:1: ( ( rule__Add__Alternatives_4 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3400:1: ( ( rule__Add__Alternatives_4 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3401:1: ( rule__Add__Alternatives_4 )
            {
             before(grammarAccess.getAddAccess().getAlternatives_4()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3402:1: ( rule__Add__Alternatives_4 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3402:2: rule__Add__Alternatives_4
            {
            pushFollow(FOLLOW_rule__Add__Alternatives_4_in_rule__Add__Group__4__Impl7339);
            rule__Add__Alternatives_4();

            state._fsp--;


            }

             after(grammarAccess.getAddAccess().getAlternatives_4()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__Group__4__Impl"


    // $ANTLR start "rule__Add__Group__5"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3412:1: rule__Add__Group__5 : rule__Add__Group__5__Impl rule__Add__Group__6 ;
    public final void rule__Add__Group__5() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3416:1: ( rule__Add__Group__5__Impl rule__Add__Group__6 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3417:2: rule__Add__Group__5__Impl rule__Add__Group__6
            {
            pushFollow(FOLLOW_rule__Add__Group__5__Impl_in_rule__Add__Group__57369);
            rule__Add__Group__5__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Add__Group__6_in_rule__Add__Group__57372);
            rule__Add__Group__6();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__Group__5"


    // $ANTLR start "rule__Add__Group__5__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3424:1: rule__Add__Group__5__Impl : ( ( rule__Add__Group_5__0 )* ) ;
    public final void rule__Add__Group__5__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3428:1: ( ( ( rule__Add__Group_5__0 )* ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3429:1: ( ( rule__Add__Group_5__0 )* )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3429:1: ( ( rule__Add__Group_5__0 )* )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3430:1: ( rule__Add__Group_5__0 )*
            {
             before(grammarAccess.getAddAccess().getGroup_5()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3431:1: ( rule__Add__Group_5__0 )*
            loop46:
            do {
                int alt46=2;
                int LA46_0 = input.LA(1);

                if ( (LA46_0==14) ) {
                    alt46=1;
                }


                switch (alt46) {
            	case 1 :
            	    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3431:2: rule__Add__Group_5__0
            	    {
            	    pushFollow(FOLLOW_rule__Add__Group_5__0_in_rule__Add__Group__5__Impl7399);
            	    rule__Add__Group_5__0();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop46;
                }
            } while (true);

             after(grammarAccess.getAddAccess().getGroup_5()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__Group__5__Impl"


    // $ANTLR start "rule__Add__Group__6"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3441:1: rule__Add__Group__6 : rule__Add__Group__6__Impl ;
    public final void rule__Add__Group__6() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3445:1: ( rule__Add__Group__6__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3446:2: rule__Add__Group__6__Impl
            {
            pushFollow(FOLLOW_rule__Add__Group__6__Impl_in_rule__Add__Group__67430);
            rule__Add__Group__6__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__Group__6"


    // $ANTLR start "rule__Add__Group__6__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3452:1: rule__Add__Group__6__Impl : ( ')' ) ;
    public final void rule__Add__Group__6__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3456:1: ( ( ')' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3457:1: ( ')' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3457:1: ( ')' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3458:1: ')'
            {
             before(grammarAccess.getAddAccess().getRightParenthesisKeyword_6()); 
            match(input,16,FOLLOW_16_in_rule__Add__Group__6__Impl7458); 
             after(grammarAccess.getAddAccess().getRightParenthesisKeyword_6()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__Group__6__Impl"


    // $ANTLR start "rule__Add__Group_5__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3485:1: rule__Add__Group_5__0 : rule__Add__Group_5__0__Impl rule__Add__Group_5__1 ;
    public final void rule__Add__Group_5__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3489:1: ( rule__Add__Group_5__0__Impl rule__Add__Group_5__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3490:2: rule__Add__Group_5__0__Impl rule__Add__Group_5__1
            {
            pushFollow(FOLLOW_rule__Add__Group_5__0__Impl_in_rule__Add__Group_5__07503);
            rule__Add__Group_5__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Add__Group_5__1_in_rule__Add__Group_5__07506);
            rule__Add__Group_5__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__Group_5__0"


    // $ANTLR start "rule__Add__Group_5__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3497:1: rule__Add__Group_5__0__Impl : ( ',' ) ;
    public final void rule__Add__Group_5__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3501:1: ( ( ',' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3502:1: ( ',' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3502:1: ( ',' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3503:1: ','
            {
             before(grammarAccess.getAddAccess().getCommaKeyword_5_0()); 
            match(input,14,FOLLOW_14_in_rule__Add__Group_5__0__Impl7534); 
             after(grammarAccess.getAddAccess().getCommaKeyword_5_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__Group_5__0__Impl"


    // $ANTLR start "rule__Add__Group_5__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3516:1: rule__Add__Group_5__1 : rule__Add__Group_5__1__Impl ;
    public final void rule__Add__Group_5__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3520:1: ( rule__Add__Group_5__1__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3521:2: rule__Add__Group_5__1__Impl
            {
            pushFollow(FOLLOW_rule__Add__Group_5__1__Impl_in_rule__Add__Group_5__17565);
            rule__Add__Group_5__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__Group_5__1"


    // $ANTLR start "rule__Add__Group_5__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3527:1: rule__Add__Group_5__1__Impl : ( ( rule__Add__Alternatives_5_1 ) ) ;
    public final void rule__Add__Group_5__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3531:1: ( ( ( rule__Add__Alternatives_5_1 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3532:1: ( ( rule__Add__Alternatives_5_1 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3532:1: ( ( rule__Add__Alternatives_5_1 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3533:1: ( rule__Add__Alternatives_5_1 )
            {
             before(grammarAccess.getAddAccess().getAlternatives_5_1()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3534:1: ( rule__Add__Alternatives_5_1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3534:2: rule__Add__Alternatives_5_1
            {
            pushFollow(FOLLOW_rule__Add__Alternatives_5_1_in_rule__Add__Group_5__1__Impl7592);
            rule__Add__Alternatives_5_1();

            state._fsp--;


            }

             after(grammarAccess.getAddAccess().getAlternatives_5_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__Group_5__1__Impl"


    // $ANTLR start "rule__Delete__Group_0__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3548:1: rule__Delete__Group_0__0 : rule__Delete__Group_0__0__Impl rule__Delete__Group_0__1 ;
    public final void rule__Delete__Group_0__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3552:1: ( rule__Delete__Group_0__0__Impl rule__Delete__Group_0__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3553:2: rule__Delete__Group_0__0__Impl rule__Delete__Group_0__1
            {
            pushFollow(FOLLOW_rule__Delete__Group_0__0__Impl_in_rule__Delete__Group_0__07626);
            rule__Delete__Group_0__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Delete__Group_0__1_in_rule__Delete__Group_0__07629);
            rule__Delete__Group_0__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_0__0"


    // $ANTLR start "rule__Delete__Group_0__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3560:1: rule__Delete__Group_0__0__Impl : ( ( rule__Delete__Alternatives_0_0 ) ) ;
    public final void rule__Delete__Group_0__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3564:1: ( ( ( rule__Delete__Alternatives_0_0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3565:1: ( ( rule__Delete__Alternatives_0_0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3565:1: ( ( rule__Delete__Alternatives_0_0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3566:1: ( rule__Delete__Alternatives_0_0 )
            {
             before(grammarAccess.getDeleteAccess().getAlternatives_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3567:1: ( rule__Delete__Alternatives_0_0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3567:2: rule__Delete__Alternatives_0_0
            {
            pushFollow(FOLLOW_rule__Delete__Alternatives_0_0_in_rule__Delete__Group_0__0__Impl7656);
            rule__Delete__Alternatives_0_0();

            state._fsp--;


            }

             after(grammarAccess.getDeleteAccess().getAlternatives_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_0__0__Impl"


    // $ANTLR start "rule__Delete__Group_0__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3577:1: rule__Delete__Group_0__1 : rule__Delete__Group_0__1__Impl rule__Delete__Group_0__2 ;
    public final void rule__Delete__Group_0__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3581:1: ( rule__Delete__Group_0__1__Impl rule__Delete__Group_0__2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3582:2: rule__Delete__Group_0__1__Impl rule__Delete__Group_0__2
            {
            pushFollow(FOLLOW_rule__Delete__Group_0__1__Impl_in_rule__Delete__Group_0__17686);
            rule__Delete__Group_0__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Delete__Group_0__2_in_rule__Delete__Group_0__17689);
            rule__Delete__Group_0__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_0__1"


    // $ANTLR start "rule__Delete__Group_0__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3589:1: rule__Delete__Group_0__1__Impl : ( '.' ) ;
    public final void rule__Delete__Group_0__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3593:1: ( ( '.' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3594:1: ( '.' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3594:1: ( '.' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3595:1: '.'
            {
             before(grammarAccess.getDeleteAccess().getFullStopKeyword_0_1()); 
            match(input,18,FOLLOW_18_in_rule__Delete__Group_0__1__Impl7717); 
             after(grammarAccess.getDeleteAccess().getFullStopKeyword_0_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_0__1__Impl"


    // $ANTLR start "rule__Delete__Group_0__2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3608:1: rule__Delete__Group_0__2 : rule__Delete__Group_0__2__Impl rule__Delete__Group_0__3 ;
    public final void rule__Delete__Group_0__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3612:1: ( rule__Delete__Group_0__2__Impl rule__Delete__Group_0__3 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3613:2: rule__Delete__Group_0__2__Impl rule__Delete__Group_0__3
            {
            pushFollow(FOLLOW_rule__Delete__Group_0__2__Impl_in_rule__Delete__Group_0__27748);
            rule__Delete__Group_0__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Delete__Group_0__3_in_rule__Delete__Group_0__27751);
            rule__Delete__Group_0__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_0__2"


    // $ANTLR start "rule__Delete__Group_0__2__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3620:1: rule__Delete__Group_0__2__Impl : ( ( rule__Delete__MethodAssignment_0_2 ) ) ;
    public final void rule__Delete__Group_0__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3624:1: ( ( ( rule__Delete__MethodAssignment_0_2 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3625:1: ( ( rule__Delete__MethodAssignment_0_2 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3625:1: ( ( rule__Delete__MethodAssignment_0_2 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3626:1: ( rule__Delete__MethodAssignment_0_2 )
            {
             before(grammarAccess.getDeleteAccess().getMethodAssignment_0_2()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3627:1: ( rule__Delete__MethodAssignment_0_2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3627:2: rule__Delete__MethodAssignment_0_2
            {
            pushFollow(FOLLOW_rule__Delete__MethodAssignment_0_2_in_rule__Delete__Group_0__2__Impl7778);
            rule__Delete__MethodAssignment_0_2();

            state._fsp--;


            }

             after(grammarAccess.getDeleteAccess().getMethodAssignment_0_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_0__2__Impl"


    // $ANTLR start "rule__Delete__Group_0__3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3637:1: rule__Delete__Group_0__3 : rule__Delete__Group_0__3__Impl rule__Delete__Group_0__4 ;
    public final void rule__Delete__Group_0__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3641:1: ( rule__Delete__Group_0__3__Impl rule__Delete__Group_0__4 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3642:2: rule__Delete__Group_0__3__Impl rule__Delete__Group_0__4
            {
            pushFollow(FOLLOW_rule__Delete__Group_0__3__Impl_in_rule__Delete__Group_0__37808);
            rule__Delete__Group_0__3__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Delete__Group_0__4_in_rule__Delete__Group_0__37811);
            rule__Delete__Group_0__4();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_0__3"


    // $ANTLR start "rule__Delete__Group_0__3__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3649:1: rule__Delete__Group_0__3__Impl : ( '(' ) ;
    public final void rule__Delete__Group_0__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3653:1: ( ( '(' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3654:1: ( '(' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3654:1: ( '(' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3655:1: '('
            {
             before(grammarAccess.getDeleteAccess().getLeftParenthesisKeyword_0_3()); 
            match(input,15,FOLLOW_15_in_rule__Delete__Group_0__3__Impl7839); 
             after(grammarAccess.getDeleteAccess().getLeftParenthesisKeyword_0_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_0__3__Impl"


    // $ANTLR start "rule__Delete__Group_0__4"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3668:1: rule__Delete__Group_0__4 : rule__Delete__Group_0__4__Impl rule__Delete__Group_0__5 ;
    public final void rule__Delete__Group_0__4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3672:1: ( rule__Delete__Group_0__4__Impl rule__Delete__Group_0__5 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3673:2: rule__Delete__Group_0__4__Impl rule__Delete__Group_0__5
            {
            pushFollow(FOLLOW_rule__Delete__Group_0__4__Impl_in_rule__Delete__Group_0__47870);
            rule__Delete__Group_0__4__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Delete__Group_0__5_in_rule__Delete__Group_0__47873);
            rule__Delete__Group_0__5();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_0__4"


    // $ANTLR start "rule__Delete__Group_0__4__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3680:1: rule__Delete__Group_0__4__Impl : ( ( rule__Delete__Alternatives_0_4 ) ) ;
    public final void rule__Delete__Group_0__4__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3684:1: ( ( ( rule__Delete__Alternatives_0_4 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3685:1: ( ( rule__Delete__Alternatives_0_4 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3685:1: ( ( rule__Delete__Alternatives_0_4 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3686:1: ( rule__Delete__Alternatives_0_4 )
            {
             before(grammarAccess.getDeleteAccess().getAlternatives_0_4()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3687:1: ( rule__Delete__Alternatives_0_4 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3687:2: rule__Delete__Alternatives_0_4
            {
            pushFollow(FOLLOW_rule__Delete__Alternatives_0_4_in_rule__Delete__Group_0__4__Impl7900);
            rule__Delete__Alternatives_0_4();

            state._fsp--;


            }

             after(grammarAccess.getDeleteAccess().getAlternatives_0_4()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_0__4__Impl"


    // $ANTLR start "rule__Delete__Group_0__5"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3697:1: rule__Delete__Group_0__5 : rule__Delete__Group_0__5__Impl rule__Delete__Group_0__6 ;
    public final void rule__Delete__Group_0__5() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3701:1: ( rule__Delete__Group_0__5__Impl rule__Delete__Group_0__6 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3702:2: rule__Delete__Group_0__5__Impl rule__Delete__Group_0__6
            {
            pushFollow(FOLLOW_rule__Delete__Group_0__5__Impl_in_rule__Delete__Group_0__57930);
            rule__Delete__Group_0__5__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Delete__Group_0__6_in_rule__Delete__Group_0__57933);
            rule__Delete__Group_0__6();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_0__5"


    // $ANTLR start "rule__Delete__Group_0__5__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3709:1: rule__Delete__Group_0__5__Impl : ( ( rule__Delete__Alternatives_0_5 )* ) ;
    public final void rule__Delete__Group_0__5__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3713:1: ( ( ( rule__Delete__Alternatives_0_5 )* ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3714:1: ( ( rule__Delete__Alternatives_0_5 )* )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3714:1: ( ( rule__Delete__Alternatives_0_5 )* )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3715:1: ( rule__Delete__Alternatives_0_5 )*
            {
             before(grammarAccess.getDeleteAccess().getAlternatives_0_5()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3716:1: ( rule__Delete__Alternatives_0_5 )*
            loop47:
            do {
                int alt47=2;
                int LA47_0 = input.LA(1);

                if ( (LA47_0==RULE_ID||LA47_0==14) ) {
                    alt47=1;
                }


                switch (alt47) {
            	case 1 :
            	    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3716:2: rule__Delete__Alternatives_0_5
            	    {
            	    pushFollow(FOLLOW_rule__Delete__Alternatives_0_5_in_rule__Delete__Group_0__5__Impl7960);
            	    rule__Delete__Alternatives_0_5();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop47;
                }
            } while (true);

             after(grammarAccess.getDeleteAccess().getAlternatives_0_5()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_0__5__Impl"


    // $ANTLR start "rule__Delete__Group_0__6"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3726:1: rule__Delete__Group_0__6 : rule__Delete__Group_0__6__Impl ;
    public final void rule__Delete__Group_0__6() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3730:1: ( rule__Delete__Group_0__6__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3731:2: rule__Delete__Group_0__6__Impl
            {
            pushFollow(FOLLOW_rule__Delete__Group_0__6__Impl_in_rule__Delete__Group_0__67991);
            rule__Delete__Group_0__6__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_0__6"


    // $ANTLR start "rule__Delete__Group_0__6__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3737:1: rule__Delete__Group_0__6__Impl : ( ')' ) ;
    public final void rule__Delete__Group_0__6__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3741:1: ( ( ')' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3742:1: ( ')' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3742:1: ( ')' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3743:1: ')'
            {
             before(grammarAccess.getDeleteAccess().getRightParenthesisKeyword_0_6()); 
            match(input,16,FOLLOW_16_in_rule__Delete__Group_0__6__Impl8019); 
             after(grammarAccess.getDeleteAccess().getRightParenthesisKeyword_0_6()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_0__6__Impl"


    // $ANTLR start "rule__Delete__Group_0_5_0__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3770:1: rule__Delete__Group_0_5_0__0 : rule__Delete__Group_0_5_0__0__Impl rule__Delete__Group_0_5_0__1 ;
    public final void rule__Delete__Group_0_5_0__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3774:1: ( rule__Delete__Group_0_5_0__0__Impl rule__Delete__Group_0_5_0__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3775:2: rule__Delete__Group_0_5_0__0__Impl rule__Delete__Group_0_5_0__1
            {
            pushFollow(FOLLOW_rule__Delete__Group_0_5_0__0__Impl_in_rule__Delete__Group_0_5_0__08064);
            rule__Delete__Group_0_5_0__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Delete__Group_0_5_0__1_in_rule__Delete__Group_0_5_0__08067);
            rule__Delete__Group_0_5_0__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_0_5_0__0"


    // $ANTLR start "rule__Delete__Group_0_5_0__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3782:1: rule__Delete__Group_0_5_0__0__Impl : ( ',' ) ;
    public final void rule__Delete__Group_0_5_0__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3786:1: ( ( ',' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3787:1: ( ',' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3787:1: ( ',' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3788:1: ','
            {
             before(grammarAccess.getDeleteAccess().getCommaKeyword_0_5_0_0()); 
            match(input,14,FOLLOW_14_in_rule__Delete__Group_0_5_0__0__Impl8095); 
             after(grammarAccess.getDeleteAccess().getCommaKeyword_0_5_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_0_5_0__0__Impl"


    // $ANTLR start "rule__Delete__Group_0_5_0__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3801:1: rule__Delete__Group_0_5_0__1 : rule__Delete__Group_0_5_0__1__Impl ;
    public final void rule__Delete__Group_0_5_0__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3805:1: ( rule__Delete__Group_0_5_0__1__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3806:2: rule__Delete__Group_0_5_0__1__Impl
            {
            pushFollow(FOLLOW_rule__Delete__Group_0_5_0__1__Impl_in_rule__Delete__Group_0_5_0__18126);
            rule__Delete__Group_0_5_0__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_0_5_0__1"


    // $ANTLR start "rule__Delete__Group_0_5_0__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3812:1: rule__Delete__Group_0_5_0__1__Impl : ( ( rule__Delete__Alternatives_0_5_0_1 ) ) ;
    public final void rule__Delete__Group_0_5_0__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3816:1: ( ( ( rule__Delete__Alternatives_0_5_0_1 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3817:1: ( ( rule__Delete__Alternatives_0_5_0_1 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3817:1: ( ( rule__Delete__Alternatives_0_5_0_1 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3818:1: ( rule__Delete__Alternatives_0_5_0_1 )
            {
             before(grammarAccess.getDeleteAccess().getAlternatives_0_5_0_1()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3819:1: ( rule__Delete__Alternatives_0_5_0_1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3819:2: rule__Delete__Alternatives_0_5_0_1
            {
            pushFollow(FOLLOW_rule__Delete__Alternatives_0_5_0_1_in_rule__Delete__Group_0_5_0__1__Impl8153);
            rule__Delete__Alternatives_0_5_0_1();

            state._fsp--;


            }

             after(grammarAccess.getDeleteAccess().getAlternatives_0_5_0_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_0_5_0__1__Impl"


    // $ANTLR start "rule__Delete__Group_1__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3833:1: rule__Delete__Group_1__0 : rule__Delete__Group_1__0__Impl rule__Delete__Group_1__1 ;
    public final void rule__Delete__Group_1__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3837:1: ( rule__Delete__Group_1__0__Impl rule__Delete__Group_1__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3838:2: rule__Delete__Group_1__0__Impl rule__Delete__Group_1__1
            {
            pushFollow(FOLLOW_rule__Delete__Group_1__0__Impl_in_rule__Delete__Group_1__08187);
            rule__Delete__Group_1__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Delete__Group_1__1_in_rule__Delete__Group_1__08190);
            rule__Delete__Group_1__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_1__0"


    // $ANTLR start "rule__Delete__Group_1__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3845:1: rule__Delete__Group_1__0__Impl : ( ( rule__Delete__Alternatives_1_0 ) ) ;
    public final void rule__Delete__Group_1__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3849:1: ( ( ( rule__Delete__Alternatives_1_0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3850:1: ( ( rule__Delete__Alternatives_1_0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3850:1: ( ( rule__Delete__Alternatives_1_0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3851:1: ( rule__Delete__Alternatives_1_0 )
            {
             before(grammarAccess.getDeleteAccess().getAlternatives_1_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3852:1: ( rule__Delete__Alternatives_1_0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3852:2: rule__Delete__Alternatives_1_0
            {
            pushFollow(FOLLOW_rule__Delete__Alternatives_1_0_in_rule__Delete__Group_1__0__Impl8217);
            rule__Delete__Alternatives_1_0();

            state._fsp--;


            }

             after(grammarAccess.getDeleteAccess().getAlternatives_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_1__0__Impl"


    // $ANTLR start "rule__Delete__Group_1__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3862:1: rule__Delete__Group_1__1 : rule__Delete__Group_1__1__Impl rule__Delete__Group_1__2 ;
    public final void rule__Delete__Group_1__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3866:1: ( rule__Delete__Group_1__1__Impl rule__Delete__Group_1__2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3867:2: rule__Delete__Group_1__1__Impl rule__Delete__Group_1__2
            {
            pushFollow(FOLLOW_rule__Delete__Group_1__1__Impl_in_rule__Delete__Group_1__18247);
            rule__Delete__Group_1__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Delete__Group_1__2_in_rule__Delete__Group_1__18250);
            rule__Delete__Group_1__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_1__1"


    // $ANTLR start "rule__Delete__Group_1__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3874:1: rule__Delete__Group_1__1__Impl : ( '.' ) ;
    public final void rule__Delete__Group_1__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3878:1: ( ( '.' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3879:1: ( '.' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3879:1: ( '.' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3880:1: '.'
            {
             before(grammarAccess.getDeleteAccess().getFullStopKeyword_1_1()); 
            match(input,18,FOLLOW_18_in_rule__Delete__Group_1__1__Impl8278); 
             after(grammarAccess.getDeleteAccess().getFullStopKeyword_1_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_1__1__Impl"


    // $ANTLR start "rule__Delete__Group_1__2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3893:1: rule__Delete__Group_1__2 : rule__Delete__Group_1__2__Impl rule__Delete__Group_1__3 ;
    public final void rule__Delete__Group_1__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3897:1: ( rule__Delete__Group_1__2__Impl rule__Delete__Group_1__3 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3898:2: rule__Delete__Group_1__2__Impl rule__Delete__Group_1__3
            {
            pushFollow(FOLLOW_rule__Delete__Group_1__2__Impl_in_rule__Delete__Group_1__28309);
            rule__Delete__Group_1__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Delete__Group_1__3_in_rule__Delete__Group_1__28312);
            rule__Delete__Group_1__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_1__2"


    // $ANTLR start "rule__Delete__Group_1__2__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3905:1: rule__Delete__Group_1__2__Impl : ( ( rule__Delete__MethodAssignment_1_2 ) ) ;
    public final void rule__Delete__Group_1__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3909:1: ( ( ( rule__Delete__MethodAssignment_1_2 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3910:1: ( ( rule__Delete__MethodAssignment_1_2 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3910:1: ( ( rule__Delete__MethodAssignment_1_2 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3911:1: ( rule__Delete__MethodAssignment_1_2 )
            {
             before(grammarAccess.getDeleteAccess().getMethodAssignment_1_2()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3912:1: ( rule__Delete__MethodAssignment_1_2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3912:2: rule__Delete__MethodAssignment_1_2
            {
            pushFollow(FOLLOW_rule__Delete__MethodAssignment_1_2_in_rule__Delete__Group_1__2__Impl8339);
            rule__Delete__MethodAssignment_1_2();

            state._fsp--;


            }

             after(grammarAccess.getDeleteAccess().getMethodAssignment_1_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_1__2__Impl"


    // $ANTLR start "rule__Delete__Group_1__3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3922:1: rule__Delete__Group_1__3 : rule__Delete__Group_1__3__Impl rule__Delete__Group_1__4 ;
    public final void rule__Delete__Group_1__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3926:1: ( rule__Delete__Group_1__3__Impl rule__Delete__Group_1__4 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3927:2: rule__Delete__Group_1__3__Impl rule__Delete__Group_1__4
            {
            pushFollow(FOLLOW_rule__Delete__Group_1__3__Impl_in_rule__Delete__Group_1__38369);
            rule__Delete__Group_1__3__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Delete__Group_1__4_in_rule__Delete__Group_1__38372);
            rule__Delete__Group_1__4();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_1__3"


    // $ANTLR start "rule__Delete__Group_1__3__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3934:1: rule__Delete__Group_1__3__Impl : ( '(' ) ;
    public final void rule__Delete__Group_1__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3938:1: ( ( '(' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3939:1: ( '(' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3939:1: ( '(' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3940:1: '('
            {
             before(grammarAccess.getDeleteAccess().getLeftParenthesisKeyword_1_3()); 
            match(input,15,FOLLOW_15_in_rule__Delete__Group_1__3__Impl8400); 
             after(grammarAccess.getDeleteAccess().getLeftParenthesisKeyword_1_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_1__3__Impl"


    // $ANTLR start "rule__Delete__Group_1__4"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3953:1: rule__Delete__Group_1__4 : rule__Delete__Group_1__4__Impl rule__Delete__Group_1__5 ;
    public final void rule__Delete__Group_1__4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3957:1: ( rule__Delete__Group_1__4__Impl rule__Delete__Group_1__5 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3958:2: rule__Delete__Group_1__4__Impl rule__Delete__Group_1__5
            {
            pushFollow(FOLLOW_rule__Delete__Group_1__4__Impl_in_rule__Delete__Group_1__48431);
            rule__Delete__Group_1__4__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Delete__Group_1__5_in_rule__Delete__Group_1__48434);
            rule__Delete__Group_1__5();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_1__4"


    // $ANTLR start "rule__Delete__Group_1__4__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3965:1: rule__Delete__Group_1__4__Impl : ( ( rule__Delete__Alternatives_1_4 ) ) ;
    public final void rule__Delete__Group_1__4__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3969:1: ( ( ( rule__Delete__Alternatives_1_4 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3970:1: ( ( rule__Delete__Alternatives_1_4 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3970:1: ( ( rule__Delete__Alternatives_1_4 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3971:1: ( rule__Delete__Alternatives_1_4 )
            {
             before(grammarAccess.getDeleteAccess().getAlternatives_1_4()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3972:1: ( rule__Delete__Alternatives_1_4 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3972:2: rule__Delete__Alternatives_1_4
            {
            pushFollow(FOLLOW_rule__Delete__Alternatives_1_4_in_rule__Delete__Group_1__4__Impl8461);
            rule__Delete__Alternatives_1_4();

            state._fsp--;


            }

             after(grammarAccess.getDeleteAccess().getAlternatives_1_4()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_1__4__Impl"


    // $ANTLR start "rule__Delete__Group_1__5"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3982:1: rule__Delete__Group_1__5 : rule__Delete__Group_1__5__Impl rule__Delete__Group_1__6 ;
    public final void rule__Delete__Group_1__5() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3986:1: ( rule__Delete__Group_1__5__Impl rule__Delete__Group_1__6 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3987:2: rule__Delete__Group_1__5__Impl rule__Delete__Group_1__6
            {
            pushFollow(FOLLOW_rule__Delete__Group_1__5__Impl_in_rule__Delete__Group_1__58491);
            rule__Delete__Group_1__5__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Delete__Group_1__6_in_rule__Delete__Group_1__58494);
            rule__Delete__Group_1__6();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_1__5"


    // $ANTLR start "rule__Delete__Group_1__5__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3994:1: rule__Delete__Group_1__5__Impl : ( ( rule__Delete__Group_1_5__0 )* ) ;
    public final void rule__Delete__Group_1__5__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3998:1: ( ( ( rule__Delete__Group_1_5__0 )* ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3999:1: ( ( rule__Delete__Group_1_5__0 )* )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:3999:1: ( ( rule__Delete__Group_1_5__0 )* )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4000:1: ( rule__Delete__Group_1_5__0 )*
            {
             before(grammarAccess.getDeleteAccess().getGroup_1_5()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4001:1: ( rule__Delete__Group_1_5__0 )*
            loop48:
            do {
                int alt48=2;
                int LA48_0 = input.LA(1);

                if ( (LA48_0==14) ) {
                    alt48=1;
                }


                switch (alt48) {
            	case 1 :
            	    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4001:2: rule__Delete__Group_1_5__0
            	    {
            	    pushFollow(FOLLOW_rule__Delete__Group_1_5__0_in_rule__Delete__Group_1__5__Impl8521);
            	    rule__Delete__Group_1_5__0();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop48;
                }
            } while (true);

             after(grammarAccess.getDeleteAccess().getGroup_1_5()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_1__5__Impl"


    // $ANTLR start "rule__Delete__Group_1__6"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4011:1: rule__Delete__Group_1__6 : rule__Delete__Group_1__6__Impl ;
    public final void rule__Delete__Group_1__6() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4015:1: ( rule__Delete__Group_1__6__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4016:2: rule__Delete__Group_1__6__Impl
            {
            pushFollow(FOLLOW_rule__Delete__Group_1__6__Impl_in_rule__Delete__Group_1__68552);
            rule__Delete__Group_1__6__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_1__6"


    // $ANTLR start "rule__Delete__Group_1__6__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4022:1: rule__Delete__Group_1__6__Impl : ( ')' ) ;
    public final void rule__Delete__Group_1__6__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4026:1: ( ( ')' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4027:1: ( ')' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4027:1: ( ')' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4028:1: ')'
            {
             before(grammarAccess.getDeleteAccess().getRightParenthesisKeyword_1_6()); 
            match(input,16,FOLLOW_16_in_rule__Delete__Group_1__6__Impl8580); 
             after(grammarAccess.getDeleteAccess().getRightParenthesisKeyword_1_6()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_1__6__Impl"


    // $ANTLR start "rule__Delete__Group_1_5__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4055:1: rule__Delete__Group_1_5__0 : rule__Delete__Group_1_5__0__Impl rule__Delete__Group_1_5__1 ;
    public final void rule__Delete__Group_1_5__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4059:1: ( rule__Delete__Group_1_5__0__Impl rule__Delete__Group_1_5__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4060:2: rule__Delete__Group_1_5__0__Impl rule__Delete__Group_1_5__1
            {
            pushFollow(FOLLOW_rule__Delete__Group_1_5__0__Impl_in_rule__Delete__Group_1_5__08625);
            rule__Delete__Group_1_5__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Delete__Group_1_5__1_in_rule__Delete__Group_1_5__08628);
            rule__Delete__Group_1_5__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_1_5__0"


    // $ANTLR start "rule__Delete__Group_1_5__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4067:1: rule__Delete__Group_1_5__0__Impl : ( ',' ) ;
    public final void rule__Delete__Group_1_5__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4071:1: ( ( ',' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4072:1: ( ',' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4072:1: ( ',' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4073:1: ','
            {
             before(grammarAccess.getDeleteAccess().getCommaKeyword_1_5_0()); 
            match(input,14,FOLLOW_14_in_rule__Delete__Group_1_5__0__Impl8656); 
             after(grammarAccess.getDeleteAccess().getCommaKeyword_1_5_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_1_5__0__Impl"


    // $ANTLR start "rule__Delete__Group_1_5__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4086:1: rule__Delete__Group_1_5__1 : rule__Delete__Group_1_5__1__Impl ;
    public final void rule__Delete__Group_1_5__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4090:1: ( rule__Delete__Group_1_5__1__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4091:2: rule__Delete__Group_1_5__1__Impl
            {
            pushFollow(FOLLOW_rule__Delete__Group_1_5__1__Impl_in_rule__Delete__Group_1_5__18687);
            rule__Delete__Group_1_5__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_1_5__1"


    // $ANTLR start "rule__Delete__Group_1_5__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4097:1: rule__Delete__Group_1_5__1__Impl : ( ( rule__Delete__Alternatives_1_5_1 ) ) ;
    public final void rule__Delete__Group_1_5__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4101:1: ( ( ( rule__Delete__Alternatives_1_5_1 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4102:1: ( ( rule__Delete__Alternatives_1_5_1 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4102:1: ( ( rule__Delete__Alternatives_1_5_1 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4103:1: ( rule__Delete__Alternatives_1_5_1 )
            {
             before(grammarAccess.getDeleteAccess().getAlternatives_1_5_1()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4104:1: ( rule__Delete__Alternatives_1_5_1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4104:2: rule__Delete__Alternatives_1_5_1
            {
            pushFollow(FOLLOW_rule__Delete__Alternatives_1_5_1_in_rule__Delete__Group_1_5__1__Impl8714);
            rule__Delete__Alternatives_1_5_1();

            state._fsp--;


            }

             after(grammarAccess.getDeleteAccess().getAlternatives_1_5_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__Group_1_5__1__Impl"


    // $ANTLR start "rule__Print__Group__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4118:1: rule__Print__Group__0 : rule__Print__Group__0__Impl rule__Print__Group__1 ;
    public final void rule__Print__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4122:1: ( rule__Print__Group__0__Impl rule__Print__Group__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4123:2: rule__Print__Group__0__Impl rule__Print__Group__1
            {
            pushFollow(FOLLOW_rule__Print__Group__0__Impl_in_rule__Print__Group__08748);
            rule__Print__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Print__Group__1_in_rule__Print__Group__08751);
            rule__Print__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Print__Group__0"


    // $ANTLR start "rule__Print__Group__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4130:1: rule__Print__Group__0__Impl : ( ( rule__Print__FunctionAssignment_0 ) ) ;
    public final void rule__Print__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4134:1: ( ( ( rule__Print__FunctionAssignment_0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4135:1: ( ( rule__Print__FunctionAssignment_0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4135:1: ( ( rule__Print__FunctionAssignment_0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4136:1: ( rule__Print__FunctionAssignment_0 )
            {
             before(grammarAccess.getPrintAccess().getFunctionAssignment_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4137:1: ( rule__Print__FunctionAssignment_0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4137:2: rule__Print__FunctionAssignment_0
            {
            pushFollow(FOLLOW_rule__Print__FunctionAssignment_0_in_rule__Print__Group__0__Impl8778);
            rule__Print__FunctionAssignment_0();

            state._fsp--;


            }

             after(grammarAccess.getPrintAccess().getFunctionAssignment_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Print__Group__0__Impl"


    // $ANTLR start "rule__Print__Group__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4147:1: rule__Print__Group__1 : rule__Print__Group__1__Impl rule__Print__Group__2 ;
    public final void rule__Print__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4151:1: ( rule__Print__Group__1__Impl rule__Print__Group__2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4152:2: rule__Print__Group__1__Impl rule__Print__Group__2
            {
            pushFollow(FOLLOW_rule__Print__Group__1__Impl_in_rule__Print__Group__18808);
            rule__Print__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Print__Group__2_in_rule__Print__Group__18811);
            rule__Print__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Print__Group__1"


    // $ANTLR start "rule__Print__Group__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4159:1: rule__Print__Group__1__Impl : ( '(' ) ;
    public final void rule__Print__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4163:1: ( ( '(' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4164:1: ( '(' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4164:1: ( '(' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4165:1: '('
            {
             before(grammarAccess.getPrintAccess().getLeftParenthesisKeyword_1()); 
            match(input,15,FOLLOW_15_in_rule__Print__Group__1__Impl8839); 
             after(grammarAccess.getPrintAccess().getLeftParenthesisKeyword_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Print__Group__1__Impl"


    // $ANTLR start "rule__Print__Group__2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4178:1: rule__Print__Group__2 : rule__Print__Group__2__Impl rule__Print__Group__3 ;
    public final void rule__Print__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4182:1: ( rule__Print__Group__2__Impl rule__Print__Group__3 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4183:2: rule__Print__Group__2__Impl rule__Print__Group__3
            {
            pushFollow(FOLLOW_rule__Print__Group__2__Impl_in_rule__Print__Group__28870);
            rule__Print__Group__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Print__Group__3_in_rule__Print__Group__28873);
            rule__Print__Group__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Print__Group__2"


    // $ANTLR start "rule__Print__Group__2__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4190:1: rule__Print__Group__2__Impl : ( ( rule__Print__Alternatives_2 ) ) ;
    public final void rule__Print__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4194:1: ( ( ( rule__Print__Alternatives_2 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4195:1: ( ( rule__Print__Alternatives_2 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4195:1: ( ( rule__Print__Alternatives_2 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4196:1: ( rule__Print__Alternatives_2 )
            {
             before(grammarAccess.getPrintAccess().getAlternatives_2()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4197:1: ( rule__Print__Alternatives_2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4197:2: rule__Print__Alternatives_2
            {
            pushFollow(FOLLOW_rule__Print__Alternatives_2_in_rule__Print__Group__2__Impl8900);
            rule__Print__Alternatives_2();

            state._fsp--;


            }

             after(grammarAccess.getPrintAccess().getAlternatives_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Print__Group__2__Impl"


    // $ANTLR start "rule__Print__Group__3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4207:1: rule__Print__Group__3 : rule__Print__Group__3__Impl rule__Print__Group__4 ;
    public final void rule__Print__Group__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4211:1: ( rule__Print__Group__3__Impl rule__Print__Group__4 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4212:2: rule__Print__Group__3__Impl rule__Print__Group__4
            {
            pushFollow(FOLLOW_rule__Print__Group__3__Impl_in_rule__Print__Group__38930);
            rule__Print__Group__3__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Print__Group__4_in_rule__Print__Group__38933);
            rule__Print__Group__4();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Print__Group__3"


    // $ANTLR start "rule__Print__Group__3__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4219:1: rule__Print__Group__3__Impl : ( ( rule__Print__Group_3__0 )* ) ;
    public final void rule__Print__Group__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4223:1: ( ( ( rule__Print__Group_3__0 )* ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4224:1: ( ( rule__Print__Group_3__0 )* )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4224:1: ( ( rule__Print__Group_3__0 )* )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4225:1: ( rule__Print__Group_3__0 )*
            {
             before(grammarAccess.getPrintAccess().getGroup_3()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4226:1: ( rule__Print__Group_3__0 )*
            loop49:
            do {
                int alt49=2;
                int LA49_0 = input.LA(1);

                if ( (LA49_0==14) ) {
                    alt49=1;
                }


                switch (alt49) {
            	case 1 :
            	    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4226:2: rule__Print__Group_3__0
            	    {
            	    pushFollow(FOLLOW_rule__Print__Group_3__0_in_rule__Print__Group__3__Impl8960);
            	    rule__Print__Group_3__0();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop49;
                }
            } while (true);

             after(grammarAccess.getPrintAccess().getGroup_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Print__Group__3__Impl"


    // $ANTLR start "rule__Print__Group__4"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4236:1: rule__Print__Group__4 : rule__Print__Group__4__Impl ;
    public final void rule__Print__Group__4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4240:1: ( rule__Print__Group__4__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4241:2: rule__Print__Group__4__Impl
            {
            pushFollow(FOLLOW_rule__Print__Group__4__Impl_in_rule__Print__Group__48991);
            rule__Print__Group__4__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Print__Group__4"


    // $ANTLR start "rule__Print__Group__4__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4247:1: rule__Print__Group__4__Impl : ( ')' ) ;
    public final void rule__Print__Group__4__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4251:1: ( ( ')' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4252:1: ( ')' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4252:1: ( ')' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4253:1: ')'
            {
             before(grammarAccess.getPrintAccess().getRightParenthesisKeyword_4()); 
            match(input,16,FOLLOW_16_in_rule__Print__Group__4__Impl9019); 
             after(grammarAccess.getPrintAccess().getRightParenthesisKeyword_4()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Print__Group__4__Impl"


    // $ANTLR start "rule__Print__Group_3__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4276:1: rule__Print__Group_3__0 : rule__Print__Group_3__0__Impl rule__Print__Group_3__1 ;
    public final void rule__Print__Group_3__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4280:1: ( rule__Print__Group_3__0__Impl rule__Print__Group_3__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4281:2: rule__Print__Group_3__0__Impl rule__Print__Group_3__1
            {
            pushFollow(FOLLOW_rule__Print__Group_3__0__Impl_in_rule__Print__Group_3__09060);
            rule__Print__Group_3__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Print__Group_3__1_in_rule__Print__Group_3__09063);
            rule__Print__Group_3__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Print__Group_3__0"


    // $ANTLR start "rule__Print__Group_3__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4288:1: rule__Print__Group_3__0__Impl : ( ',' ) ;
    public final void rule__Print__Group_3__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4292:1: ( ( ',' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4293:1: ( ',' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4293:1: ( ',' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4294:1: ','
            {
             before(grammarAccess.getPrintAccess().getCommaKeyword_3_0()); 
            match(input,14,FOLLOW_14_in_rule__Print__Group_3__0__Impl9091); 
             after(grammarAccess.getPrintAccess().getCommaKeyword_3_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Print__Group_3__0__Impl"


    // $ANTLR start "rule__Print__Group_3__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4307:1: rule__Print__Group_3__1 : rule__Print__Group_3__1__Impl ;
    public final void rule__Print__Group_3__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4311:1: ( rule__Print__Group_3__1__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4312:2: rule__Print__Group_3__1__Impl
            {
            pushFollow(FOLLOW_rule__Print__Group_3__1__Impl_in_rule__Print__Group_3__19122);
            rule__Print__Group_3__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Print__Group_3__1"


    // $ANTLR start "rule__Print__Group_3__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4318:1: rule__Print__Group_3__1__Impl : ( ( rule__Print__Alternatives_3_1 ) ) ;
    public final void rule__Print__Group_3__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4322:1: ( ( ( rule__Print__Alternatives_3_1 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4323:1: ( ( rule__Print__Alternatives_3_1 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4323:1: ( ( rule__Print__Alternatives_3_1 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4324:1: ( rule__Print__Alternatives_3_1 )
            {
             before(grammarAccess.getPrintAccess().getAlternatives_3_1()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4325:1: ( rule__Print__Alternatives_3_1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4325:2: rule__Print__Alternatives_3_1
            {
            pushFollow(FOLLOW_rule__Print__Alternatives_3_1_in_rule__Print__Group_3__1__Impl9149);
            rule__Print__Alternatives_3_1();

            state._fsp--;


            }

             after(grammarAccess.getPrintAccess().getAlternatives_3_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Print__Group_3__1__Impl"


    // $ANTLR start "rule__For__Group_0__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4339:1: rule__For__Group_0__0 : rule__For__Group_0__0__Impl rule__For__Group_0__1 ;
    public final void rule__For__Group_0__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4343:1: ( rule__For__Group_0__0__Impl rule__For__Group_0__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4344:2: rule__For__Group_0__0__Impl rule__For__Group_0__1
            {
            pushFollow(FOLLOW_rule__For__Group_0__0__Impl_in_rule__For__Group_0__09183);
            rule__For__Group_0__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__For__Group_0__1_in_rule__For__Group_0__09186);
            rule__For__Group_0__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_0__0"


    // $ANTLR start "rule__For__Group_0__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4351:1: rule__For__Group_0__0__Impl : ( ( rule__For__FunctionAssignment_0_0 ) ) ;
    public final void rule__For__Group_0__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4355:1: ( ( ( rule__For__FunctionAssignment_0_0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4356:1: ( ( rule__For__FunctionAssignment_0_0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4356:1: ( ( rule__For__FunctionAssignment_0_0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4357:1: ( rule__For__FunctionAssignment_0_0 )
            {
             before(grammarAccess.getForAccess().getFunctionAssignment_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4358:1: ( rule__For__FunctionAssignment_0_0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4358:2: rule__For__FunctionAssignment_0_0
            {
            pushFollow(FOLLOW_rule__For__FunctionAssignment_0_0_in_rule__For__Group_0__0__Impl9213);
            rule__For__FunctionAssignment_0_0();

            state._fsp--;


            }

             after(grammarAccess.getForAccess().getFunctionAssignment_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_0__0__Impl"


    // $ANTLR start "rule__For__Group_0__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4368:1: rule__For__Group_0__1 : rule__For__Group_0__1__Impl rule__For__Group_0__2 ;
    public final void rule__For__Group_0__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4372:1: ( rule__For__Group_0__1__Impl rule__For__Group_0__2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4373:2: rule__For__Group_0__1__Impl rule__For__Group_0__2
            {
            pushFollow(FOLLOW_rule__For__Group_0__1__Impl_in_rule__For__Group_0__19243);
            rule__For__Group_0__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__For__Group_0__2_in_rule__For__Group_0__19246);
            rule__For__Group_0__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_0__1"


    // $ANTLR start "rule__For__Group_0__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4380:1: rule__For__Group_0__1__Impl : ( '(' ) ;
    public final void rule__For__Group_0__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4384:1: ( ( '(' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4385:1: ( '(' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4385:1: ( '(' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4386:1: '('
            {
             before(grammarAccess.getForAccess().getLeftParenthesisKeyword_0_1()); 
            match(input,15,FOLLOW_15_in_rule__For__Group_0__1__Impl9274); 
             after(grammarAccess.getForAccess().getLeftParenthesisKeyword_0_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_0__1__Impl"


    // $ANTLR start "rule__For__Group_0__2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4399:1: rule__For__Group_0__2 : rule__For__Group_0__2__Impl rule__For__Group_0__3 ;
    public final void rule__For__Group_0__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4403:1: ( rule__For__Group_0__2__Impl rule__For__Group_0__3 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4404:2: rule__For__Group_0__2__Impl rule__For__Group_0__3
            {
            pushFollow(FOLLOW_rule__For__Group_0__2__Impl_in_rule__For__Group_0__29305);
            rule__For__Group_0__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__For__Group_0__3_in_rule__For__Group_0__29308);
            rule__For__Group_0__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_0__2"


    // $ANTLR start "rule__For__Group_0__2__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4411:1: rule__For__Group_0__2__Impl : ( 'file' ) ;
    public final void rule__For__Group_0__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4415:1: ( ( 'file' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4416:1: ( 'file' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4416:1: ( 'file' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4417:1: 'file'
            {
             before(grammarAccess.getForAccess().getFileKeyword_0_2()); 
            match(input,19,FOLLOW_19_in_rule__For__Group_0__2__Impl9336); 
             after(grammarAccess.getForAccess().getFileKeyword_0_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_0__2__Impl"


    // $ANTLR start "rule__For__Group_0__3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4430:1: rule__For__Group_0__3 : rule__For__Group_0__3__Impl rule__For__Group_0__4 ;
    public final void rule__For__Group_0__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4434:1: ( rule__For__Group_0__3__Impl rule__For__Group_0__4 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4435:2: rule__For__Group_0__3__Impl rule__For__Group_0__4
            {
            pushFollow(FOLLOW_rule__For__Group_0__3__Impl_in_rule__For__Group_0__39367);
            rule__For__Group_0__3__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__For__Group_0__4_in_rule__For__Group_0__39370);
            rule__For__Group_0__4();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_0__3"


    // $ANTLR start "rule__For__Group_0__3__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4442:1: rule__For__Group_0__3__Impl : ( ( rule__For__LocVarAssignment_0_3 ) ) ;
    public final void rule__For__Group_0__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4446:1: ( ( ( rule__For__LocVarAssignment_0_3 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4447:1: ( ( rule__For__LocVarAssignment_0_3 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4447:1: ( ( rule__For__LocVarAssignment_0_3 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4448:1: ( rule__For__LocVarAssignment_0_3 )
            {
             before(grammarAccess.getForAccess().getLocVarAssignment_0_3()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4449:1: ( rule__For__LocVarAssignment_0_3 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4449:2: rule__For__LocVarAssignment_0_3
            {
            pushFollow(FOLLOW_rule__For__LocVarAssignment_0_3_in_rule__For__Group_0__3__Impl9397);
            rule__For__LocVarAssignment_0_3();

            state._fsp--;


            }

             after(grammarAccess.getForAccess().getLocVarAssignment_0_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_0__3__Impl"


    // $ANTLR start "rule__For__Group_0__4"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4459:1: rule__For__Group_0__4 : rule__For__Group_0__4__Impl rule__For__Group_0__5 ;
    public final void rule__For__Group_0__4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4463:1: ( rule__For__Group_0__4__Impl rule__For__Group_0__5 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4464:2: rule__For__Group_0__4__Impl rule__For__Group_0__5
            {
            pushFollow(FOLLOW_rule__For__Group_0__4__Impl_in_rule__For__Group_0__49427);
            rule__For__Group_0__4__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__For__Group_0__5_in_rule__For__Group_0__49430);
            rule__For__Group_0__5();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_0__4"


    // $ANTLR start "rule__For__Group_0__4__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4471:1: rule__For__Group_0__4__Impl : ( ':' ) ;
    public final void rule__For__Group_0__4__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4475:1: ( ( ':' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4476:1: ( ':' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4476:1: ( ':' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4477:1: ':'
            {
             before(grammarAccess.getForAccess().getColonKeyword_0_4()); 
            match(input,20,FOLLOW_20_in_rule__For__Group_0__4__Impl9458); 
             after(grammarAccess.getForAccess().getColonKeyword_0_4()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_0__4__Impl"


    // $ANTLR start "rule__For__Group_0__5"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4490:1: rule__For__Group_0__5 : rule__For__Group_0__5__Impl rule__For__Group_0__6 ;
    public final void rule__For__Group_0__5() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4494:1: ( rule__For__Group_0__5__Impl rule__For__Group_0__6 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4495:2: rule__For__Group_0__5__Impl rule__For__Group_0__6
            {
            pushFollow(FOLLOW_rule__For__Group_0__5__Impl_in_rule__For__Group_0__59489);
            rule__For__Group_0__5__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__For__Group_0__6_in_rule__For__Group_0__59492);
            rule__For__Group_0__6();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_0__5"


    // $ANTLR start "rule__For__Group_0__5__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4502:1: rule__For__Group_0__5__Impl : ( ( rule__For__DirAssignment_0_5 ) ) ;
    public final void rule__For__Group_0__5__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4506:1: ( ( ( rule__For__DirAssignment_0_5 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4507:1: ( ( rule__For__DirAssignment_0_5 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4507:1: ( ( rule__For__DirAssignment_0_5 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4508:1: ( rule__For__DirAssignment_0_5 )
            {
             before(grammarAccess.getForAccess().getDirAssignment_0_5()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4509:1: ( rule__For__DirAssignment_0_5 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4509:2: rule__For__DirAssignment_0_5
            {
            pushFollow(FOLLOW_rule__For__DirAssignment_0_5_in_rule__For__Group_0__5__Impl9519);
            rule__For__DirAssignment_0_5();

            state._fsp--;


            }

             after(grammarAccess.getForAccess().getDirAssignment_0_5()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_0__5__Impl"


    // $ANTLR start "rule__For__Group_0__6"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4519:1: rule__For__Group_0__6 : rule__For__Group_0__6__Impl rule__For__Group_0__7 ;
    public final void rule__For__Group_0__6() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4523:1: ( rule__For__Group_0__6__Impl rule__For__Group_0__7 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4524:2: rule__For__Group_0__6__Impl rule__For__Group_0__7
            {
            pushFollow(FOLLOW_rule__For__Group_0__6__Impl_in_rule__For__Group_0__69549);
            rule__For__Group_0__6__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__For__Group_0__7_in_rule__For__Group_0__69552);
            rule__For__Group_0__7();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_0__6"


    // $ANTLR start "rule__For__Group_0__6__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4531:1: rule__For__Group_0__6__Impl : ( ')' ) ;
    public final void rule__For__Group_0__6__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4535:1: ( ( ')' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4536:1: ( ')' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4536:1: ( ')' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4537:1: ')'
            {
             before(grammarAccess.getForAccess().getRightParenthesisKeyword_0_6()); 
            match(input,16,FOLLOW_16_in_rule__For__Group_0__6__Impl9580); 
             after(grammarAccess.getForAccess().getRightParenthesisKeyword_0_6()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_0__6__Impl"


    // $ANTLR start "rule__For__Group_0__7"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4550:1: rule__For__Group_0__7 : rule__For__Group_0__7__Impl rule__For__Group_0__8 ;
    public final void rule__For__Group_0__7() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4554:1: ( rule__For__Group_0__7__Impl rule__For__Group_0__8 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4555:2: rule__For__Group_0__7__Impl rule__For__Group_0__8
            {
            pushFollow(FOLLOW_rule__For__Group_0__7__Impl_in_rule__For__Group_0__79611);
            rule__For__Group_0__7__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__For__Group_0__8_in_rule__For__Group_0__79614);
            rule__For__Group_0__8();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_0__7"


    // $ANTLR start "rule__For__Group_0__7__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4562:1: rule__For__Group_0__7__Impl : ( '{' ) ;
    public final void rule__For__Group_0__7__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4566:1: ( ( '{' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4567:1: ( '{' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4567:1: ( '{' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4568:1: '{'
            {
             before(grammarAccess.getForAccess().getLeftCurlyBracketKeyword_0_7()); 
            match(input,21,FOLLOW_21_in_rule__For__Group_0__7__Impl9642); 
             after(grammarAccess.getForAccess().getLeftCurlyBracketKeyword_0_7()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_0__7__Impl"


    // $ANTLR start "rule__For__Group_0__8"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4581:1: rule__For__Group_0__8 : rule__For__Group_0__8__Impl rule__For__Group_0__9 ;
    public final void rule__For__Group_0__8() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4585:1: ( rule__For__Group_0__8__Impl rule__For__Group_0__9 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4586:2: rule__For__Group_0__8__Impl rule__For__Group_0__9
            {
            pushFollow(FOLLOW_rule__For__Group_0__8__Impl_in_rule__For__Group_0__89673);
            rule__For__Group_0__8__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__For__Group_0__9_in_rule__For__Group_0__89676);
            rule__For__Group_0__9();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_0__8"


    // $ANTLR start "rule__For__Group_0__8__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4593:1: rule__For__Group_0__8__Impl : ( ( rule__For__InnerElementsAssignment_0_8 )* ) ;
    public final void rule__For__Group_0__8__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4597:1: ( ( ( rule__For__InnerElementsAssignment_0_8 )* ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4598:1: ( ( rule__For__InnerElementsAssignment_0_8 )* )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4598:1: ( ( rule__For__InnerElementsAssignment_0_8 )* )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4599:1: ( rule__For__InnerElementsAssignment_0_8 )*
            {
             before(grammarAccess.getForAccess().getInnerElementsAssignment_0_8()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4600:1: ( rule__For__InnerElementsAssignment_0_8 )*
            loop50:
            do {
                int alt50=2;
                int LA50_0 = input.LA(1);

                if ( (LA50_0==RULE_ID||(LA50_0>=11 && LA50_0<=13)||LA50_0==25||(LA50_0>=29 && LA50_0<=35)) ) {
                    alt50=1;
                }


                switch (alt50) {
            	case 1 :
            	    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4600:2: rule__For__InnerElementsAssignment_0_8
            	    {
            	    pushFollow(FOLLOW_rule__For__InnerElementsAssignment_0_8_in_rule__For__Group_0__8__Impl9703);
            	    rule__For__InnerElementsAssignment_0_8();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop50;
                }
            } while (true);

             after(grammarAccess.getForAccess().getInnerElementsAssignment_0_8()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_0__8__Impl"


    // $ANTLR start "rule__For__Group_0__9"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4610:1: rule__For__Group_0__9 : rule__For__Group_0__9__Impl ;
    public final void rule__For__Group_0__9() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4614:1: ( rule__For__Group_0__9__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4615:2: rule__For__Group_0__9__Impl
            {
            pushFollow(FOLLOW_rule__For__Group_0__9__Impl_in_rule__For__Group_0__99734);
            rule__For__Group_0__9__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_0__9"


    // $ANTLR start "rule__For__Group_0__9__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4621:1: rule__For__Group_0__9__Impl : ( '}' ) ;
    public final void rule__For__Group_0__9__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4625:1: ( ( '}' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4626:1: ( '}' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4626:1: ( '}' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4627:1: '}'
            {
             before(grammarAccess.getForAccess().getRightCurlyBracketKeyword_0_9()); 
            match(input,22,FOLLOW_22_in_rule__For__Group_0__9__Impl9762); 
             after(grammarAccess.getForAccess().getRightCurlyBracketKeyword_0_9()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_0__9__Impl"


    // $ANTLR start "rule__For__Group_1__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4660:1: rule__For__Group_1__0 : rule__For__Group_1__0__Impl rule__For__Group_1__1 ;
    public final void rule__For__Group_1__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4664:1: ( rule__For__Group_1__0__Impl rule__For__Group_1__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4665:2: rule__For__Group_1__0__Impl rule__For__Group_1__1
            {
            pushFollow(FOLLOW_rule__For__Group_1__0__Impl_in_rule__For__Group_1__09813);
            rule__For__Group_1__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__For__Group_1__1_in_rule__For__Group_1__09816);
            rule__For__Group_1__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_1__0"


    // $ANTLR start "rule__For__Group_1__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4672:1: rule__For__Group_1__0__Impl : ( ( rule__For__FunctionAssignment_1_0 ) ) ;
    public final void rule__For__Group_1__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4676:1: ( ( ( rule__For__FunctionAssignment_1_0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4677:1: ( ( rule__For__FunctionAssignment_1_0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4677:1: ( ( rule__For__FunctionAssignment_1_0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4678:1: ( rule__For__FunctionAssignment_1_0 )
            {
             before(grammarAccess.getForAccess().getFunctionAssignment_1_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4679:1: ( rule__For__FunctionAssignment_1_0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4679:2: rule__For__FunctionAssignment_1_0
            {
            pushFollow(FOLLOW_rule__For__FunctionAssignment_1_0_in_rule__For__Group_1__0__Impl9843);
            rule__For__FunctionAssignment_1_0();

            state._fsp--;


            }

             after(grammarAccess.getForAccess().getFunctionAssignment_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_1__0__Impl"


    // $ANTLR start "rule__For__Group_1__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4689:1: rule__For__Group_1__1 : rule__For__Group_1__1__Impl rule__For__Group_1__2 ;
    public final void rule__For__Group_1__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4693:1: ( rule__For__Group_1__1__Impl rule__For__Group_1__2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4694:2: rule__For__Group_1__1__Impl rule__For__Group_1__2
            {
            pushFollow(FOLLOW_rule__For__Group_1__1__Impl_in_rule__For__Group_1__19873);
            rule__For__Group_1__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__For__Group_1__2_in_rule__For__Group_1__19876);
            rule__For__Group_1__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_1__1"


    // $ANTLR start "rule__For__Group_1__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4701:1: rule__For__Group_1__1__Impl : ( '(' ) ;
    public final void rule__For__Group_1__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4705:1: ( ( '(' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4706:1: ( '(' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4706:1: ( '(' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4707:1: '('
            {
             before(grammarAccess.getForAccess().getLeftParenthesisKeyword_1_1()); 
            match(input,15,FOLLOW_15_in_rule__For__Group_1__1__Impl9904); 
             after(grammarAccess.getForAccess().getLeftParenthesisKeyword_1_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_1__1__Impl"


    // $ANTLR start "rule__For__Group_1__2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4720:1: rule__For__Group_1__2 : rule__For__Group_1__2__Impl rule__For__Group_1__3 ;
    public final void rule__For__Group_1__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4724:1: ( rule__For__Group_1__2__Impl rule__For__Group_1__3 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4725:2: rule__For__Group_1__2__Impl rule__For__Group_1__3
            {
            pushFollow(FOLLOW_rule__For__Group_1__2__Impl_in_rule__For__Group_1__29935);
            rule__For__Group_1__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__For__Group_1__3_in_rule__For__Group_1__29938);
            rule__For__Group_1__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_1__2"


    // $ANTLR start "rule__For__Group_1__2__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4732:1: rule__For__Group_1__2__Impl : ( ( rule__For__VarAssignment_1_2 ) ) ;
    public final void rule__For__Group_1__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4736:1: ( ( ( rule__For__VarAssignment_1_2 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4737:1: ( ( rule__For__VarAssignment_1_2 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4737:1: ( ( rule__For__VarAssignment_1_2 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4738:1: ( rule__For__VarAssignment_1_2 )
            {
             before(grammarAccess.getForAccess().getVarAssignment_1_2()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4739:1: ( rule__For__VarAssignment_1_2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4739:2: rule__For__VarAssignment_1_2
            {
            pushFollow(FOLLOW_rule__For__VarAssignment_1_2_in_rule__For__Group_1__2__Impl9965);
            rule__For__VarAssignment_1_2();

            state._fsp--;


            }

             after(grammarAccess.getForAccess().getVarAssignment_1_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_1__2__Impl"


    // $ANTLR start "rule__For__Group_1__3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4749:1: rule__For__Group_1__3 : rule__For__Group_1__3__Impl rule__For__Group_1__4 ;
    public final void rule__For__Group_1__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4753:1: ( rule__For__Group_1__3__Impl rule__For__Group_1__4 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4754:2: rule__For__Group_1__3__Impl rule__For__Group_1__4
            {
            pushFollow(FOLLOW_rule__For__Group_1__3__Impl_in_rule__For__Group_1__39995);
            rule__For__Group_1__3__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__For__Group_1__4_in_rule__For__Group_1__39998);
            rule__For__Group_1__4();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_1__3"


    // $ANTLR start "rule__For__Group_1__3__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4761:1: rule__For__Group_1__3__Impl : ( ')' ) ;
    public final void rule__For__Group_1__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4765:1: ( ( ')' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4766:1: ( ')' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4766:1: ( ')' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4767:1: ')'
            {
             before(grammarAccess.getForAccess().getRightParenthesisKeyword_1_3()); 
            match(input,16,FOLLOW_16_in_rule__For__Group_1__3__Impl10026); 
             after(grammarAccess.getForAccess().getRightParenthesisKeyword_1_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_1__3__Impl"


    // $ANTLR start "rule__For__Group_1__4"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4780:1: rule__For__Group_1__4 : rule__For__Group_1__4__Impl rule__For__Group_1__5 ;
    public final void rule__For__Group_1__4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4784:1: ( rule__For__Group_1__4__Impl rule__For__Group_1__5 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4785:2: rule__For__Group_1__4__Impl rule__For__Group_1__5
            {
            pushFollow(FOLLOW_rule__For__Group_1__4__Impl_in_rule__For__Group_1__410057);
            rule__For__Group_1__4__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__For__Group_1__5_in_rule__For__Group_1__410060);
            rule__For__Group_1__5();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_1__4"


    // $ANTLR start "rule__For__Group_1__4__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4792:1: rule__For__Group_1__4__Impl : ( '{' ) ;
    public final void rule__For__Group_1__4__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4796:1: ( ( '{' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4797:1: ( '{' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4797:1: ( '{' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4798:1: '{'
            {
             before(grammarAccess.getForAccess().getLeftCurlyBracketKeyword_1_4()); 
            match(input,21,FOLLOW_21_in_rule__For__Group_1__4__Impl10088); 
             after(grammarAccess.getForAccess().getLeftCurlyBracketKeyword_1_4()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_1__4__Impl"


    // $ANTLR start "rule__For__Group_1__5"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4811:1: rule__For__Group_1__5 : rule__For__Group_1__5__Impl rule__For__Group_1__6 ;
    public final void rule__For__Group_1__5() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4815:1: ( rule__For__Group_1__5__Impl rule__For__Group_1__6 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4816:2: rule__For__Group_1__5__Impl rule__For__Group_1__6
            {
            pushFollow(FOLLOW_rule__For__Group_1__5__Impl_in_rule__For__Group_1__510119);
            rule__For__Group_1__5__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__For__Group_1__6_in_rule__For__Group_1__510122);
            rule__For__Group_1__6();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_1__5"


    // $ANTLR start "rule__For__Group_1__5__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4823:1: rule__For__Group_1__5__Impl : ( ( rule__For__InnerElementsAssignment_1_5 )* ) ;
    public final void rule__For__Group_1__5__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4827:1: ( ( ( rule__For__InnerElementsAssignment_1_5 )* ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4828:1: ( ( rule__For__InnerElementsAssignment_1_5 )* )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4828:1: ( ( rule__For__InnerElementsAssignment_1_5 )* )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4829:1: ( rule__For__InnerElementsAssignment_1_5 )*
            {
             before(grammarAccess.getForAccess().getInnerElementsAssignment_1_5()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4830:1: ( rule__For__InnerElementsAssignment_1_5 )*
            loop51:
            do {
                int alt51=2;
                int LA51_0 = input.LA(1);

                if ( (LA51_0==RULE_ID||(LA51_0>=11 && LA51_0<=13)||LA51_0==25||(LA51_0>=29 && LA51_0<=35)) ) {
                    alt51=1;
                }


                switch (alt51) {
            	case 1 :
            	    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4830:2: rule__For__InnerElementsAssignment_1_5
            	    {
            	    pushFollow(FOLLOW_rule__For__InnerElementsAssignment_1_5_in_rule__For__Group_1__5__Impl10149);
            	    rule__For__InnerElementsAssignment_1_5();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop51;
                }
            } while (true);

             after(grammarAccess.getForAccess().getInnerElementsAssignment_1_5()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_1__5__Impl"


    // $ANTLR start "rule__For__Group_1__6"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4840:1: rule__For__Group_1__6 : rule__For__Group_1__6__Impl ;
    public final void rule__For__Group_1__6() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4844:1: ( rule__For__Group_1__6__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4845:2: rule__For__Group_1__6__Impl
            {
            pushFollow(FOLLOW_rule__For__Group_1__6__Impl_in_rule__For__Group_1__610180);
            rule__For__Group_1__6__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_1__6"


    // $ANTLR start "rule__For__Group_1__6__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4851:1: rule__For__Group_1__6__Impl : ( '}' ) ;
    public final void rule__For__Group_1__6__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4855:1: ( ( '}' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4856:1: ( '}' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4856:1: ( '}' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4857:1: '}'
            {
             before(grammarAccess.getForAccess().getRightCurlyBracketKeyword_1_6()); 
            match(input,22,FOLLOW_22_in_rule__For__Group_1__6__Impl10208); 
             after(grammarAccess.getForAccess().getRightCurlyBracketKeyword_1_6()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__Group_1__6__Impl"


    // $ANTLR start "rule__Forall__Group__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4884:1: rule__Forall__Group__0 : rule__Forall__Group__0__Impl rule__Forall__Group__1 ;
    public final void rule__Forall__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4888:1: ( rule__Forall__Group__0__Impl rule__Forall__Group__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4889:2: rule__Forall__Group__0__Impl rule__Forall__Group__1
            {
            pushFollow(FOLLOW_rule__Forall__Group__0__Impl_in_rule__Forall__Group__010253);
            rule__Forall__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Forall__Group__1_in_rule__Forall__Group__010256);
            rule__Forall__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__Group__0"


    // $ANTLR start "rule__Forall__Group__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4896:1: rule__Forall__Group__0__Impl : ( ( rule__Forall__FunctionAssignment_0 ) ) ;
    public final void rule__Forall__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4900:1: ( ( ( rule__Forall__FunctionAssignment_0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4901:1: ( ( rule__Forall__FunctionAssignment_0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4901:1: ( ( rule__Forall__FunctionAssignment_0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4902:1: ( rule__Forall__FunctionAssignment_0 )
            {
             before(grammarAccess.getForallAccess().getFunctionAssignment_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4903:1: ( rule__Forall__FunctionAssignment_0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4903:2: rule__Forall__FunctionAssignment_0
            {
            pushFollow(FOLLOW_rule__Forall__FunctionAssignment_0_in_rule__Forall__Group__0__Impl10283);
            rule__Forall__FunctionAssignment_0();

            state._fsp--;


            }

             after(grammarAccess.getForallAccess().getFunctionAssignment_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__Group__0__Impl"


    // $ANTLR start "rule__Forall__Group__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4913:1: rule__Forall__Group__1 : rule__Forall__Group__1__Impl rule__Forall__Group__2 ;
    public final void rule__Forall__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4917:1: ( rule__Forall__Group__1__Impl rule__Forall__Group__2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4918:2: rule__Forall__Group__1__Impl rule__Forall__Group__2
            {
            pushFollow(FOLLOW_rule__Forall__Group__1__Impl_in_rule__Forall__Group__110313);
            rule__Forall__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Forall__Group__2_in_rule__Forall__Group__110316);
            rule__Forall__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__Group__1"


    // $ANTLR start "rule__Forall__Group__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4925:1: rule__Forall__Group__1__Impl : ( ( rule__Forall__LocVarAssignment_1 ) ) ;
    public final void rule__Forall__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4929:1: ( ( ( rule__Forall__LocVarAssignment_1 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4930:1: ( ( rule__Forall__LocVarAssignment_1 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4930:1: ( ( rule__Forall__LocVarAssignment_1 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4931:1: ( rule__Forall__LocVarAssignment_1 )
            {
             before(grammarAccess.getForallAccess().getLocVarAssignment_1()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4932:1: ( rule__Forall__LocVarAssignment_1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4932:2: rule__Forall__LocVarAssignment_1
            {
            pushFollow(FOLLOW_rule__Forall__LocVarAssignment_1_in_rule__Forall__Group__1__Impl10343);
            rule__Forall__LocVarAssignment_1();

            state._fsp--;


            }

             after(grammarAccess.getForallAccess().getLocVarAssignment_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__Group__1__Impl"


    // $ANTLR start "rule__Forall__Group__2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4942:1: rule__Forall__Group__2 : rule__Forall__Group__2__Impl rule__Forall__Group__3 ;
    public final void rule__Forall__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4946:1: ( rule__Forall__Group__2__Impl rule__Forall__Group__3 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4947:2: rule__Forall__Group__2__Impl rule__Forall__Group__3
            {
            pushFollow(FOLLOW_rule__Forall__Group__2__Impl_in_rule__Forall__Group__210373);
            rule__Forall__Group__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Forall__Group__3_in_rule__Forall__Group__210376);
            rule__Forall__Group__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__Group__2"


    // $ANTLR start "rule__Forall__Group__2__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4954:1: rule__Forall__Group__2__Impl : ( '(' ) ;
    public final void rule__Forall__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4958:1: ( ( '(' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4959:1: ( '(' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4959:1: ( '(' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4960:1: '('
            {
             before(grammarAccess.getForallAccess().getLeftParenthesisKeyword_2()); 
            match(input,15,FOLLOW_15_in_rule__Forall__Group__2__Impl10404); 
             after(grammarAccess.getForallAccess().getLeftParenthesisKeyword_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__Group__2__Impl"


    // $ANTLR start "rule__Forall__Group__3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4973:1: rule__Forall__Group__3 : rule__Forall__Group__3__Impl rule__Forall__Group__4 ;
    public final void rule__Forall__Group__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4977:1: ( rule__Forall__Group__3__Impl rule__Forall__Group__4 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4978:2: rule__Forall__Group__3__Impl rule__Forall__Group__4
            {
            pushFollow(FOLLOW_rule__Forall__Group__3__Impl_in_rule__Forall__Group__310435);
            rule__Forall__Group__3__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Forall__Group__4_in_rule__Forall__Group__310438);
            rule__Forall__Group__4();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__Group__3"


    // $ANTLR start "rule__Forall__Group__3__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4985:1: rule__Forall__Group__3__Impl : ( ( rule__Forall__Alternatives_3 ) ) ;
    public final void rule__Forall__Group__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4989:1: ( ( ( rule__Forall__Alternatives_3 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4990:1: ( ( rule__Forall__Alternatives_3 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4990:1: ( ( rule__Forall__Alternatives_3 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4991:1: ( rule__Forall__Alternatives_3 )
            {
             before(grammarAccess.getForallAccess().getAlternatives_3()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4992:1: ( rule__Forall__Alternatives_3 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:4992:2: rule__Forall__Alternatives_3
            {
            pushFollow(FOLLOW_rule__Forall__Alternatives_3_in_rule__Forall__Group__3__Impl10465);
            rule__Forall__Alternatives_3();

            state._fsp--;


            }

             after(grammarAccess.getForallAccess().getAlternatives_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__Group__3__Impl"


    // $ANTLR start "rule__Forall__Group__4"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5002:1: rule__Forall__Group__4 : rule__Forall__Group__4__Impl rule__Forall__Group__5 ;
    public final void rule__Forall__Group__4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5006:1: ( rule__Forall__Group__4__Impl rule__Forall__Group__5 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5007:2: rule__Forall__Group__4__Impl rule__Forall__Group__5
            {
            pushFollow(FOLLOW_rule__Forall__Group__4__Impl_in_rule__Forall__Group__410495);
            rule__Forall__Group__4__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Forall__Group__5_in_rule__Forall__Group__410498);
            rule__Forall__Group__5();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__Group__4"


    // $ANTLR start "rule__Forall__Group__4__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5014:1: rule__Forall__Group__4__Impl : ( ',' ) ;
    public final void rule__Forall__Group__4__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5018:1: ( ( ',' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5019:1: ( ',' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5019:1: ( ',' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5020:1: ','
            {
             before(grammarAccess.getForallAccess().getCommaKeyword_4()); 
            match(input,14,FOLLOW_14_in_rule__Forall__Group__4__Impl10526); 
             after(grammarAccess.getForallAccess().getCommaKeyword_4()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__Group__4__Impl"


    // $ANTLR start "rule__Forall__Group__5"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5033:1: rule__Forall__Group__5 : rule__Forall__Group__5__Impl rule__Forall__Group__6 ;
    public final void rule__Forall__Group__5() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5037:1: ( rule__Forall__Group__5__Impl rule__Forall__Group__6 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5038:2: rule__Forall__Group__5__Impl rule__Forall__Group__6
            {
            pushFollow(FOLLOW_rule__Forall__Group__5__Impl_in_rule__Forall__Group__510557);
            rule__Forall__Group__5__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Forall__Group__6_in_rule__Forall__Group__510560);
            rule__Forall__Group__6();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__Group__5"


    // $ANTLR start "rule__Forall__Group__5__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5045:1: rule__Forall__Group__5__Impl : ( ( rule__Forall__Alternatives_5 ) ) ;
    public final void rule__Forall__Group__5__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5049:1: ( ( ( rule__Forall__Alternatives_5 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5050:1: ( ( rule__Forall__Alternatives_5 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5050:1: ( ( rule__Forall__Alternatives_5 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5051:1: ( rule__Forall__Alternatives_5 )
            {
             before(grammarAccess.getForallAccess().getAlternatives_5()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5052:1: ( rule__Forall__Alternatives_5 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5052:2: rule__Forall__Alternatives_5
            {
            pushFollow(FOLLOW_rule__Forall__Alternatives_5_in_rule__Forall__Group__5__Impl10587);
            rule__Forall__Alternatives_5();

            state._fsp--;


            }

             after(grammarAccess.getForallAccess().getAlternatives_5()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__Group__5__Impl"


    // $ANTLR start "rule__Forall__Group__6"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5062:1: rule__Forall__Group__6 : rule__Forall__Group__6__Impl rule__Forall__Group__7 ;
    public final void rule__Forall__Group__6() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5066:1: ( rule__Forall__Group__6__Impl rule__Forall__Group__7 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5067:2: rule__Forall__Group__6__Impl rule__Forall__Group__7
            {
            pushFollow(FOLLOW_rule__Forall__Group__6__Impl_in_rule__Forall__Group__610617);
            rule__Forall__Group__6__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Forall__Group__7_in_rule__Forall__Group__610620);
            rule__Forall__Group__7();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__Group__6"


    // $ANTLR start "rule__Forall__Group__6__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5074:1: rule__Forall__Group__6__Impl : ( ')' ) ;
    public final void rule__Forall__Group__6__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5078:1: ( ( ')' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5079:1: ( ')' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5079:1: ( ')' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5080:1: ')'
            {
             before(grammarAccess.getForallAccess().getRightParenthesisKeyword_6()); 
            match(input,16,FOLLOW_16_in_rule__Forall__Group__6__Impl10648); 
             after(grammarAccess.getForallAccess().getRightParenthesisKeyword_6()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__Group__6__Impl"


    // $ANTLR start "rule__Forall__Group__7"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5093:1: rule__Forall__Group__7 : rule__Forall__Group__7__Impl rule__Forall__Group__8 ;
    public final void rule__Forall__Group__7() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5097:1: ( rule__Forall__Group__7__Impl rule__Forall__Group__8 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5098:2: rule__Forall__Group__7__Impl rule__Forall__Group__8
            {
            pushFollow(FOLLOW_rule__Forall__Group__7__Impl_in_rule__Forall__Group__710679);
            rule__Forall__Group__7__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Forall__Group__8_in_rule__Forall__Group__710682);
            rule__Forall__Group__8();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__Group__7"


    // $ANTLR start "rule__Forall__Group__7__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5105:1: rule__Forall__Group__7__Impl : ( '{' ) ;
    public final void rule__Forall__Group__7__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5109:1: ( ( '{' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5110:1: ( '{' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5110:1: ( '{' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5111:1: '{'
            {
             before(grammarAccess.getForallAccess().getLeftCurlyBracketKeyword_7()); 
            match(input,21,FOLLOW_21_in_rule__Forall__Group__7__Impl10710); 
             after(grammarAccess.getForallAccess().getLeftCurlyBracketKeyword_7()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__Group__7__Impl"


    // $ANTLR start "rule__Forall__Group__8"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5124:1: rule__Forall__Group__8 : rule__Forall__Group__8__Impl rule__Forall__Group__9 ;
    public final void rule__Forall__Group__8() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5128:1: ( rule__Forall__Group__8__Impl rule__Forall__Group__9 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5129:2: rule__Forall__Group__8__Impl rule__Forall__Group__9
            {
            pushFollow(FOLLOW_rule__Forall__Group__8__Impl_in_rule__Forall__Group__810741);
            rule__Forall__Group__8__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Forall__Group__9_in_rule__Forall__Group__810744);
            rule__Forall__Group__9();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__Group__8"


    // $ANTLR start "rule__Forall__Group__8__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5136:1: rule__Forall__Group__8__Impl : ( ( rule__Forall__InnerElementsAssignment_8 )* ) ;
    public final void rule__Forall__Group__8__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5140:1: ( ( ( rule__Forall__InnerElementsAssignment_8 )* ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5141:1: ( ( rule__Forall__InnerElementsAssignment_8 )* )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5141:1: ( ( rule__Forall__InnerElementsAssignment_8 )* )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5142:1: ( rule__Forall__InnerElementsAssignment_8 )*
            {
             before(grammarAccess.getForallAccess().getInnerElementsAssignment_8()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5143:1: ( rule__Forall__InnerElementsAssignment_8 )*
            loop52:
            do {
                int alt52=2;
                int LA52_0 = input.LA(1);

                if ( (LA52_0==RULE_ID||(LA52_0>=11 && LA52_0<=13)||LA52_0==25||(LA52_0>=29 && LA52_0<=35)) ) {
                    alt52=1;
                }


                switch (alt52) {
            	case 1 :
            	    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5143:2: rule__Forall__InnerElementsAssignment_8
            	    {
            	    pushFollow(FOLLOW_rule__Forall__InnerElementsAssignment_8_in_rule__Forall__Group__8__Impl10771);
            	    rule__Forall__InnerElementsAssignment_8();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop52;
                }
            } while (true);

             after(grammarAccess.getForallAccess().getInnerElementsAssignment_8()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__Group__8__Impl"


    // $ANTLR start "rule__Forall__Group__9"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5153:1: rule__Forall__Group__9 : rule__Forall__Group__9__Impl ;
    public final void rule__Forall__Group__9() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5157:1: ( rule__Forall__Group__9__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5158:2: rule__Forall__Group__9__Impl
            {
            pushFollow(FOLLOW_rule__Forall__Group__9__Impl_in_rule__Forall__Group__910802);
            rule__Forall__Group__9__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__Group__9"


    // $ANTLR start "rule__Forall__Group__9__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5164:1: rule__Forall__Group__9__Impl : ( '}' ) ;
    public final void rule__Forall__Group__9__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5168:1: ( ( '}' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5169:1: ( '}' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5169:1: ( '}' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5170:1: '}'
            {
             before(grammarAccess.getForallAccess().getRightCurlyBracketKeyword_9()); 
            match(input,22,FOLLOW_22_in_rule__Forall__Group__9__Impl10830); 
             after(grammarAccess.getForallAccess().getRightCurlyBracketKeyword_9()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__Group__9__Impl"


    // $ANTLR start "rule__CalcCR__Group_0__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5203:1: rule__CalcCR__Group_0__0 : rule__CalcCR__Group_0__0__Impl rule__CalcCR__Group_0__1 ;
    public final void rule__CalcCR__Group_0__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5207:1: ( rule__CalcCR__Group_0__0__Impl rule__CalcCR__Group_0__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5208:2: rule__CalcCR__Group_0__0__Impl rule__CalcCR__Group_0__1
            {
            pushFollow(FOLLOW_rule__CalcCR__Group_0__0__Impl_in_rule__CalcCR__Group_0__010881);
            rule__CalcCR__Group_0__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__CalcCR__Group_0__1_in_rule__CalcCR__Group_0__010884);
            rule__CalcCR__Group_0__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__Group_0__0"


    // $ANTLR start "rule__CalcCR__Group_0__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5215:1: rule__CalcCR__Group_0__0__Impl : ( ( rule__CalcCR__FunctionAssignment_0_0 ) ) ;
    public final void rule__CalcCR__Group_0__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5219:1: ( ( ( rule__CalcCR__FunctionAssignment_0_0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5220:1: ( ( rule__CalcCR__FunctionAssignment_0_0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5220:1: ( ( rule__CalcCR__FunctionAssignment_0_0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5221:1: ( rule__CalcCR__FunctionAssignment_0_0 )
            {
             before(grammarAccess.getCalcCRAccess().getFunctionAssignment_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5222:1: ( rule__CalcCR__FunctionAssignment_0_0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5222:2: rule__CalcCR__FunctionAssignment_0_0
            {
            pushFollow(FOLLOW_rule__CalcCR__FunctionAssignment_0_0_in_rule__CalcCR__Group_0__0__Impl10911);
            rule__CalcCR__FunctionAssignment_0_0();

            state._fsp--;


            }

             after(grammarAccess.getCalcCRAccess().getFunctionAssignment_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__Group_0__0__Impl"


    // $ANTLR start "rule__CalcCR__Group_0__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5232:1: rule__CalcCR__Group_0__1 : rule__CalcCR__Group_0__1__Impl rule__CalcCR__Group_0__2 ;
    public final void rule__CalcCR__Group_0__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5236:1: ( rule__CalcCR__Group_0__1__Impl rule__CalcCR__Group_0__2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5237:2: rule__CalcCR__Group_0__1__Impl rule__CalcCR__Group_0__2
            {
            pushFollow(FOLLOW_rule__CalcCR__Group_0__1__Impl_in_rule__CalcCR__Group_0__110941);
            rule__CalcCR__Group_0__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__CalcCR__Group_0__2_in_rule__CalcCR__Group_0__110944);
            rule__CalcCR__Group_0__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__Group_0__1"


    // $ANTLR start "rule__CalcCR__Group_0__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5244:1: rule__CalcCR__Group_0__1__Impl : ( '(' ) ;
    public final void rule__CalcCR__Group_0__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5248:1: ( ( '(' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5249:1: ( '(' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5249:1: ( '(' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5250:1: '('
            {
             before(grammarAccess.getCalcCRAccess().getLeftParenthesisKeyword_0_1()); 
            match(input,15,FOLLOW_15_in_rule__CalcCR__Group_0__1__Impl10972); 
             after(grammarAccess.getCalcCRAccess().getLeftParenthesisKeyword_0_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__Group_0__1__Impl"


    // $ANTLR start "rule__CalcCR__Group_0__2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5263:1: rule__CalcCR__Group_0__2 : rule__CalcCR__Group_0__2__Impl rule__CalcCR__Group_0__3 ;
    public final void rule__CalcCR__Group_0__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5267:1: ( rule__CalcCR__Group_0__2__Impl rule__CalcCR__Group_0__3 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5268:2: rule__CalcCR__Group_0__2__Impl rule__CalcCR__Group_0__3
            {
            pushFollow(FOLLOW_rule__CalcCR__Group_0__2__Impl_in_rule__CalcCR__Group_0__211003);
            rule__CalcCR__Group_0__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__CalcCR__Group_0__3_in_rule__CalcCR__Group_0__211006);
            rule__CalcCR__Group_0__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__Group_0__2"


    // $ANTLR start "rule__CalcCR__Group_0__2__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5275:1: rule__CalcCR__Group_0__2__Impl : ( ( rule__CalcCR__Alternatives_0_2 ) ) ;
    public final void rule__CalcCR__Group_0__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5279:1: ( ( ( rule__CalcCR__Alternatives_0_2 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5280:1: ( ( rule__CalcCR__Alternatives_0_2 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5280:1: ( ( rule__CalcCR__Alternatives_0_2 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5281:1: ( rule__CalcCR__Alternatives_0_2 )
            {
             before(grammarAccess.getCalcCRAccess().getAlternatives_0_2()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5282:1: ( rule__CalcCR__Alternatives_0_2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5282:2: rule__CalcCR__Alternatives_0_2
            {
            pushFollow(FOLLOW_rule__CalcCR__Alternatives_0_2_in_rule__CalcCR__Group_0__2__Impl11033);
            rule__CalcCR__Alternatives_0_2();

            state._fsp--;


            }

             after(grammarAccess.getCalcCRAccess().getAlternatives_0_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__Group_0__2__Impl"


    // $ANTLR start "rule__CalcCR__Group_0__3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5292:1: rule__CalcCR__Group_0__3 : rule__CalcCR__Group_0__3__Impl ;
    public final void rule__CalcCR__Group_0__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5296:1: ( rule__CalcCR__Group_0__3__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5297:2: rule__CalcCR__Group_0__3__Impl
            {
            pushFollow(FOLLOW_rule__CalcCR__Group_0__3__Impl_in_rule__CalcCR__Group_0__311063);
            rule__CalcCR__Group_0__3__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__Group_0__3"


    // $ANTLR start "rule__CalcCR__Group_0__3__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5303:1: rule__CalcCR__Group_0__3__Impl : ( ')' ) ;
    public final void rule__CalcCR__Group_0__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5307:1: ( ( ')' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5308:1: ( ')' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5308:1: ( ')' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5309:1: ')'
            {
             before(grammarAccess.getCalcCRAccess().getRightParenthesisKeyword_0_3()); 
            match(input,16,FOLLOW_16_in_rule__CalcCR__Group_0__3__Impl11091); 
             after(grammarAccess.getCalcCRAccess().getRightParenthesisKeyword_0_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__Group_0__3__Impl"


    // $ANTLR start "rule__CalcCR__Group_1__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5330:1: rule__CalcCR__Group_1__0 : rule__CalcCR__Group_1__0__Impl rule__CalcCR__Group_1__1 ;
    public final void rule__CalcCR__Group_1__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5334:1: ( rule__CalcCR__Group_1__0__Impl rule__CalcCR__Group_1__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5335:2: rule__CalcCR__Group_1__0__Impl rule__CalcCR__Group_1__1
            {
            pushFollow(FOLLOW_rule__CalcCR__Group_1__0__Impl_in_rule__CalcCR__Group_1__011130);
            rule__CalcCR__Group_1__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__CalcCR__Group_1__1_in_rule__CalcCR__Group_1__011133);
            rule__CalcCR__Group_1__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__Group_1__0"


    // $ANTLR start "rule__CalcCR__Group_1__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5342:1: rule__CalcCR__Group_1__0__Impl : ( ( rule__CalcCR__FunctionAssignment_1_0 ) ) ;
    public final void rule__CalcCR__Group_1__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5346:1: ( ( ( rule__CalcCR__FunctionAssignment_1_0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5347:1: ( ( rule__CalcCR__FunctionAssignment_1_0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5347:1: ( ( rule__CalcCR__FunctionAssignment_1_0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5348:1: ( rule__CalcCR__FunctionAssignment_1_0 )
            {
             before(grammarAccess.getCalcCRAccess().getFunctionAssignment_1_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5349:1: ( rule__CalcCR__FunctionAssignment_1_0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5349:2: rule__CalcCR__FunctionAssignment_1_0
            {
            pushFollow(FOLLOW_rule__CalcCR__FunctionAssignment_1_0_in_rule__CalcCR__Group_1__0__Impl11160);
            rule__CalcCR__FunctionAssignment_1_0();

            state._fsp--;


            }

             after(grammarAccess.getCalcCRAccess().getFunctionAssignment_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__Group_1__0__Impl"


    // $ANTLR start "rule__CalcCR__Group_1__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5359:1: rule__CalcCR__Group_1__1 : rule__CalcCR__Group_1__1__Impl rule__CalcCR__Group_1__2 ;
    public final void rule__CalcCR__Group_1__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5363:1: ( rule__CalcCR__Group_1__1__Impl rule__CalcCR__Group_1__2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5364:2: rule__CalcCR__Group_1__1__Impl rule__CalcCR__Group_1__2
            {
            pushFollow(FOLLOW_rule__CalcCR__Group_1__1__Impl_in_rule__CalcCR__Group_1__111190);
            rule__CalcCR__Group_1__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__CalcCR__Group_1__2_in_rule__CalcCR__Group_1__111193);
            rule__CalcCR__Group_1__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__Group_1__1"


    // $ANTLR start "rule__CalcCR__Group_1__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5371:1: rule__CalcCR__Group_1__1__Impl : ( '(' ) ;
    public final void rule__CalcCR__Group_1__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5375:1: ( ( '(' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5376:1: ( '(' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5376:1: ( '(' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5377:1: '('
            {
             before(grammarAccess.getCalcCRAccess().getLeftParenthesisKeyword_1_1()); 
            match(input,15,FOLLOW_15_in_rule__CalcCR__Group_1__1__Impl11221); 
             after(grammarAccess.getCalcCRAccess().getLeftParenthesisKeyword_1_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__Group_1__1__Impl"


    // $ANTLR start "rule__CalcCR__Group_1__2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5390:1: rule__CalcCR__Group_1__2 : rule__CalcCR__Group_1__2__Impl rule__CalcCR__Group_1__3 ;
    public final void rule__CalcCR__Group_1__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5394:1: ( rule__CalcCR__Group_1__2__Impl rule__CalcCR__Group_1__3 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5395:2: rule__CalcCR__Group_1__2__Impl rule__CalcCR__Group_1__3
            {
            pushFollow(FOLLOW_rule__CalcCR__Group_1__2__Impl_in_rule__CalcCR__Group_1__211252);
            rule__CalcCR__Group_1__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__CalcCR__Group_1__3_in_rule__CalcCR__Group_1__211255);
            rule__CalcCR__Group_1__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__Group_1__2"


    // $ANTLR start "rule__CalcCR__Group_1__2__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5402:1: rule__CalcCR__Group_1__2__Impl : ( ( rule__CalcCR__Alternatives_1_2 ) ) ;
    public final void rule__CalcCR__Group_1__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5406:1: ( ( ( rule__CalcCR__Alternatives_1_2 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5407:1: ( ( rule__CalcCR__Alternatives_1_2 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5407:1: ( ( rule__CalcCR__Alternatives_1_2 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5408:1: ( rule__CalcCR__Alternatives_1_2 )
            {
             before(grammarAccess.getCalcCRAccess().getAlternatives_1_2()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5409:1: ( rule__CalcCR__Alternatives_1_2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5409:2: rule__CalcCR__Alternatives_1_2
            {
            pushFollow(FOLLOW_rule__CalcCR__Alternatives_1_2_in_rule__CalcCR__Group_1__2__Impl11282);
            rule__CalcCR__Alternatives_1_2();

            state._fsp--;


            }

             after(grammarAccess.getCalcCRAccess().getAlternatives_1_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__Group_1__2__Impl"


    // $ANTLR start "rule__CalcCR__Group_1__3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5419:1: rule__CalcCR__Group_1__3 : rule__CalcCR__Group_1__3__Impl rule__CalcCR__Group_1__4 ;
    public final void rule__CalcCR__Group_1__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5423:1: ( rule__CalcCR__Group_1__3__Impl rule__CalcCR__Group_1__4 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5424:2: rule__CalcCR__Group_1__3__Impl rule__CalcCR__Group_1__4
            {
            pushFollow(FOLLOW_rule__CalcCR__Group_1__3__Impl_in_rule__CalcCR__Group_1__311312);
            rule__CalcCR__Group_1__3__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__CalcCR__Group_1__4_in_rule__CalcCR__Group_1__311315);
            rule__CalcCR__Group_1__4();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__Group_1__3"


    // $ANTLR start "rule__CalcCR__Group_1__3__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5431:1: rule__CalcCR__Group_1__3__Impl : ( ',' ) ;
    public final void rule__CalcCR__Group_1__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5435:1: ( ( ',' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5436:1: ( ',' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5436:1: ( ',' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5437:1: ','
            {
             before(grammarAccess.getCalcCRAccess().getCommaKeyword_1_3()); 
            match(input,14,FOLLOW_14_in_rule__CalcCR__Group_1__3__Impl11343); 
             after(grammarAccess.getCalcCRAccess().getCommaKeyword_1_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__Group_1__3__Impl"


    // $ANTLR start "rule__CalcCR__Group_1__4"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5450:1: rule__CalcCR__Group_1__4 : rule__CalcCR__Group_1__4__Impl rule__CalcCR__Group_1__5 ;
    public final void rule__CalcCR__Group_1__4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5454:1: ( rule__CalcCR__Group_1__4__Impl rule__CalcCR__Group_1__5 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5455:2: rule__CalcCR__Group_1__4__Impl rule__CalcCR__Group_1__5
            {
            pushFollow(FOLLOW_rule__CalcCR__Group_1__4__Impl_in_rule__CalcCR__Group_1__411374);
            rule__CalcCR__Group_1__4__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__CalcCR__Group_1__5_in_rule__CalcCR__Group_1__411377);
            rule__CalcCR__Group_1__5();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__Group_1__4"


    // $ANTLR start "rule__CalcCR__Group_1__4__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5462:1: rule__CalcCR__Group_1__4__Impl : ( ( rule__CalcCR__Alternatives_1_4 ) ) ;
    public final void rule__CalcCR__Group_1__4__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5466:1: ( ( ( rule__CalcCR__Alternatives_1_4 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5467:1: ( ( rule__CalcCR__Alternatives_1_4 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5467:1: ( ( rule__CalcCR__Alternatives_1_4 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5468:1: ( rule__CalcCR__Alternatives_1_4 )
            {
             before(grammarAccess.getCalcCRAccess().getAlternatives_1_4()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5469:1: ( rule__CalcCR__Alternatives_1_4 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5469:2: rule__CalcCR__Alternatives_1_4
            {
            pushFollow(FOLLOW_rule__CalcCR__Alternatives_1_4_in_rule__CalcCR__Group_1__4__Impl11404);
            rule__CalcCR__Alternatives_1_4();

            state._fsp--;


            }

             after(grammarAccess.getCalcCRAccess().getAlternatives_1_4()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__Group_1__4__Impl"


    // $ANTLR start "rule__CalcCR__Group_1__5"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5479:1: rule__CalcCR__Group_1__5 : rule__CalcCR__Group_1__5__Impl ;
    public final void rule__CalcCR__Group_1__5() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5483:1: ( rule__CalcCR__Group_1__5__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5484:2: rule__CalcCR__Group_1__5__Impl
            {
            pushFollow(FOLLOW_rule__CalcCR__Group_1__5__Impl_in_rule__CalcCR__Group_1__511434);
            rule__CalcCR__Group_1__5__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__Group_1__5"


    // $ANTLR start "rule__CalcCR__Group_1__5__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5490:1: rule__CalcCR__Group_1__5__Impl : ( ')' ) ;
    public final void rule__CalcCR__Group_1__5__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5494:1: ( ( ')' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5495:1: ( ')' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5495:1: ( ')' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5496:1: ')'
            {
             before(grammarAccess.getCalcCRAccess().getRightParenthesisKeyword_1_5()); 
            match(input,16,FOLLOW_16_in_rule__CalcCR__Group_1__5__Impl11462); 
             after(grammarAccess.getCalcCRAccess().getRightParenthesisKeyword_1_5()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__Group_1__5__Impl"


    // $ANTLR start "rule__CalcMean__Group__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5521:1: rule__CalcMean__Group__0 : rule__CalcMean__Group__0__Impl rule__CalcMean__Group__1 ;
    public final void rule__CalcMean__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5525:1: ( rule__CalcMean__Group__0__Impl rule__CalcMean__Group__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5526:2: rule__CalcMean__Group__0__Impl rule__CalcMean__Group__1
            {
            pushFollow(FOLLOW_rule__CalcMean__Group__0__Impl_in_rule__CalcMean__Group__011505);
            rule__CalcMean__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__CalcMean__Group__1_in_rule__CalcMean__Group__011508);
            rule__CalcMean__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcMean__Group__0"


    // $ANTLR start "rule__CalcMean__Group__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5533:1: rule__CalcMean__Group__0__Impl : ( ( rule__CalcMean__FunctionAssignment_0 ) ) ;
    public final void rule__CalcMean__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5537:1: ( ( ( rule__CalcMean__FunctionAssignment_0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5538:1: ( ( rule__CalcMean__FunctionAssignment_0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5538:1: ( ( rule__CalcMean__FunctionAssignment_0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5539:1: ( rule__CalcMean__FunctionAssignment_0 )
            {
             before(grammarAccess.getCalcMeanAccess().getFunctionAssignment_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5540:1: ( rule__CalcMean__FunctionAssignment_0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5540:2: rule__CalcMean__FunctionAssignment_0
            {
            pushFollow(FOLLOW_rule__CalcMean__FunctionAssignment_0_in_rule__CalcMean__Group__0__Impl11535);
            rule__CalcMean__FunctionAssignment_0();

            state._fsp--;


            }

             after(grammarAccess.getCalcMeanAccess().getFunctionAssignment_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcMean__Group__0__Impl"


    // $ANTLR start "rule__CalcMean__Group__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5550:1: rule__CalcMean__Group__1 : rule__CalcMean__Group__1__Impl rule__CalcMean__Group__2 ;
    public final void rule__CalcMean__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5554:1: ( rule__CalcMean__Group__1__Impl rule__CalcMean__Group__2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5555:2: rule__CalcMean__Group__1__Impl rule__CalcMean__Group__2
            {
            pushFollow(FOLLOW_rule__CalcMean__Group__1__Impl_in_rule__CalcMean__Group__111565);
            rule__CalcMean__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__CalcMean__Group__2_in_rule__CalcMean__Group__111568);
            rule__CalcMean__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcMean__Group__1"


    // $ANTLR start "rule__CalcMean__Group__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5562:1: rule__CalcMean__Group__1__Impl : ( '(' ) ;
    public final void rule__CalcMean__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5566:1: ( ( '(' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5567:1: ( '(' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5567:1: ( '(' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5568:1: '('
            {
             before(grammarAccess.getCalcMeanAccess().getLeftParenthesisKeyword_1()); 
            match(input,15,FOLLOW_15_in_rule__CalcMean__Group__1__Impl11596); 
             after(grammarAccess.getCalcMeanAccess().getLeftParenthesisKeyword_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcMean__Group__1__Impl"


    // $ANTLR start "rule__CalcMean__Group__2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5581:1: rule__CalcMean__Group__2 : rule__CalcMean__Group__2__Impl rule__CalcMean__Group__3 ;
    public final void rule__CalcMean__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5585:1: ( rule__CalcMean__Group__2__Impl rule__CalcMean__Group__3 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5586:2: rule__CalcMean__Group__2__Impl rule__CalcMean__Group__3
            {
            pushFollow(FOLLOW_rule__CalcMean__Group__2__Impl_in_rule__CalcMean__Group__211627);
            rule__CalcMean__Group__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__CalcMean__Group__3_in_rule__CalcMean__Group__211630);
            rule__CalcMean__Group__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcMean__Group__2"


    // $ANTLR start "rule__CalcMean__Group__2__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5593:1: rule__CalcMean__Group__2__Impl : ( ( rule__CalcMean__Alternatives_2 ) ) ;
    public final void rule__CalcMean__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5597:1: ( ( ( rule__CalcMean__Alternatives_2 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5598:1: ( ( rule__CalcMean__Alternatives_2 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5598:1: ( ( rule__CalcMean__Alternatives_2 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5599:1: ( rule__CalcMean__Alternatives_2 )
            {
             before(grammarAccess.getCalcMeanAccess().getAlternatives_2()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5600:1: ( rule__CalcMean__Alternatives_2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5600:2: rule__CalcMean__Alternatives_2
            {
            pushFollow(FOLLOW_rule__CalcMean__Alternatives_2_in_rule__CalcMean__Group__2__Impl11657);
            rule__CalcMean__Alternatives_2();

            state._fsp--;


            }

             after(grammarAccess.getCalcMeanAccess().getAlternatives_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcMean__Group__2__Impl"


    // $ANTLR start "rule__CalcMean__Group__3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5610:1: rule__CalcMean__Group__3 : rule__CalcMean__Group__3__Impl ;
    public final void rule__CalcMean__Group__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5614:1: ( rule__CalcMean__Group__3__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5615:2: rule__CalcMean__Group__3__Impl
            {
            pushFollow(FOLLOW_rule__CalcMean__Group__3__Impl_in_rule__CalcMean__Group__311687);
            rule__CalcMean__Group__3__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcMean__Group__3"


    // $ANTLR start "rule__CalcMean__Group__3__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5621:1: rule__CalcMean__Group__3__Impl : ( ')' ) ;
    public final void rule__CalcMean__Group__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5625:1: ( ( ')' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5626:1: ( ')' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5626:1: ( ')' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5627:1: ')'
            {
             before(grammarAccess.getCalcMeanAccess().getRightParenthesisKeyword_3()); 
            match(input,16,FOLLOW_16_in_rule__CalcMean__Group__3__Impl11715); 
             after(grammarAccess.getCalcMeanAccess().getRightParenthesisKeyword_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcMean__Group__3__Impl"


    // $ANTLR start "rule__HighestCR__Group__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5648:1: rule__HighestCR__Group__0 : rule__HighestCR__Group__0__Impl rule__HighestCR__Group__1 ;
    public final void rule__HighestCR__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5652:1: ( rule__HighestCR__Group__0__Impl rule__HighestCR__Group__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5653:2: rule__HighestCR__Group__0__Impl rule__HighestCR__Group__1
            {
            pushFollow(FOLLOW_rule__HighestCR__Group__0__Impl_in_rule__HighestCR__Group__011754);
            rule__HighestCR__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__HighestCR__Group__1_in_rule__HighestCR__Group__011757);
            rule__HighestCR__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__HighestCR__Group__0"


    // $ANTLR start "rule__HighestCR__Group__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5660:1: rule__HighestCR__Group__0__Impl : ( ( rule__HighestCR__FunctionAssignment_0 ) ) ;
    public final void rule__HighestCR__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5664:1: ( ( ( rule__HighestCR__FunctionAssignment_0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5665:1: ( ( rule__HighestCR__FunctionAssignment_0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5665:1: ( ( rule__HighestCR__FunctionAssignment_0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5666:1: ( rule__HighestCR__FunctionAssignment_0 )
            {
             before(grammarAccess.getHighestCRAccess().getFunctionAssignment_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5667:1: ( rule__HighestCR__FunctionAssignment_0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5667:2: rule__HighestCR__FunctionAssignment_0
            {
            pushFollow(FOLLOW_rule__HighestCR__FunctionAssignment_0_in_rule__HighestCR__Group__0__Impl11784);
            rule__HighestCR__FunctionAssignment_0();

            state._fsp--;


            }

             after(grammarAccess.getHighestCRAccess().getFunctionAssignment_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__HighestCR__Group__0__Impl"


    // $ANTLR start "rule__HighestCR__Group__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5677:1: rule__HighestCR__Group__1 : rule__HighestCR__Group__1__Impl rule__HighestCR__Group__2 ;
    public final void rule__HighestCR__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5681:1: ( rule__HighestCR__Group__1__Impl rule__HighestCR__Group__2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5682:2: rule__HighestCR__Group__1__Impl rule__HighestCR__Group__2
            {
            pushFollow(FOLLOW_rule__HighestCR__Group__1__Impl_in_rule__HighestCR__Group__111814);
            rule__HighestCR__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__HighestCR__Group__2_in_rule__HighestCR__Group__111817);
            rule__HighestCR__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__HighestCR__Group__1"


    // $ANTLR start "rule__HighestCR__Group__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5689:1: rule__HighestCR__Group__1__Impl : ( '(' ) ;
    public final void rule__HighestCR__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5693:1: ( ( '(' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5694:1: ( '(' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5694:1: ( '(' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5695:1: '('
            {
             before(grammarAccess.getHighestCRAccess().getLeftParenthesisKeyword_1()); 
            match(input,15,FOLLOW_15_in_rule__HighestCR__Group__1__Impl11845); 
             after(grammarAccess.getHighestCRAccess().getLeftParenthesisKeyword_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__HighestCR__Group__1__Impl"


    // $ANTLR start "rule__HighestCR__Group__2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5708:1: rule__HighestCR__Group__2 : rule__HighestCR__Group__2__Impl rule__HighestCR__Group__3 ;
    public final void rule__HighestCR__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5712:1: ( rule__HighestCR__Group__2__Impl rule__HighestCR__Group__3 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5713:2: rule__HighestCR__Group__2__Impl rule__HighestCR__Group__3
            {
            pushFollow(FOLLOW_rule__HighestCR__Group__2__Impl_in_rule__HighestCR__Group__211876);
            rule__HighestCR__Group__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__HighestCR__Group__3_in_rule__HighestCR__Group__211879);
            rule__HighestCR__Group__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__HighestCR__Group__2"


    // $ANTLR start "rule__HighestCR__Group__2__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5720:1: rule__HighestCR__Group__2__Impl : ( ( rule__HighestCR__Alternatives_2 ) ) ;
    public final void rule__HighestCR__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5724:1: ( ( ( rule__HighestCR__Alternatives_2 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5725:1: ( ( rule__HighestCR__Alternatives_2 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5725:1: ( ( rule__HighestCR__Alternatives_2 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5726:1: ( rule__HighestCR__Alternatives_2 )
            {
             before(grammarAccess.getHighestCRAccess().getAlternatives_2()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5727:1: ( rule__HighestCR__Alternatives_2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5727:2: rule__HighestCR__Alternatives_2
            {
            pushFollow(FOLLOW_rule__HighestCR__Alternatives_2_in_rule__HighestCR__Group__2__Impl11906);
            rule__HighestCR__Alternatives_2();

            state._fsp--;


            }

             after(grammarAccess.getHighestCRAccess().getAlternatives_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__HighestCR__Group__2__Impl"


    // $ANTLR start "rule__HighestCR__Group__3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5737:1: rule__HighestCR__Group__3 : rule__HighestCR__Group__3__Impl ;
    public final void rule__HighestCR__Group__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5741:1: ( rule__HighestCR__Group__3__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5742:2: rule__HighestCR__Group__3__Impl
            {
            pushFollow(FOLLOW_rule__HighestCR__Group__3__Impl_in_rule__HighestCR__Group__311936);
            rule__HighestCR__Group__3__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__HighestCR__Group__3"


    // $ANTLR start "rule__HighestCR__Group__3__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5748:1: rule__HighestCR__Group__3__Impl : ( ')' ) ;
    public final void rule__HighestCR__Group__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5752:1: ( ( ')' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5753:1: ( ')' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5753:1: ( ')' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5754:1: ')'
            {
             before(grammarAccess.getHighestCRAccess().getRightParenthesisKeyword_3()); 
            match(input,16,FOLLOW_16_in_rule__HighestCR__Group__3__Impl11964); 
             after(grammarAccess.getHighestCRAccess().getRightParenthesisKeyword_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__HighestCR__Group__3__Impl"


    // $ANTLR start "rule__FindSimilar__Group__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5775:1: rule__FindSimilar__Group__0 : rule__FindSimilar__Group__0__Impl rule__FindSimilar__Group__1 ;
    public final void rule__FindSimilar__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5779:1: ( rule__FindSimilar__Group__0__Impl rule__FindSimilar__Group__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5780:2: rule__FindSimilar__Group__0__Impl rule__FindSimilar__Group__1
            {
            pushFollow(FOLLOW_rule__FindSimilar__Group__0__Impl_in_rule__FindSimilar__Group__012003);
            rule__FindSimilar__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__FindSimilar__Group__1_in_rule__FindSimilar__Group__012006);
            rule__FindSimilar__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__Group__0"


    // $ANTLR start "rule__FindSimilar__Group__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5787:1: rule__FindSimilar__Group__0__Impl : ( ( rule__FindSimilar__FunctionAssignment_0 ) ) ;
    public final void rule__FindSimilar__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5791:1: ( ( ( rule__FindSimilar__FunctionAssignment_0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5792:1: ( ( rule__FindSimilar__FunctionAssignment_0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5792:1: ( ( rule__FindSimilar__FunctionAssignment_0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5793:1: ( rule__FindSimilar__FunctionAssignment_0 )
            {
             before(grammarAccess.getFindSimilarAccess().getFunctionAssignment_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5794:1: ( rule__FindSimilar__FunctionAssignment_0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5794:2: rule__FindSimilar__FunctionAssignment_0
            {
            pushFollow(FOLLOW_rule__FindSimilar__FunctionAssignment_0_in_rule__FindSimilar__Group__0__Impl12033);
            rule__FindSimilar__FunctionAssignment_0();

            state._fsp--;


            }

             after(grammarAccess.getFindSimilarAccess().getFunctionAssignment_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__Group__0__Impl"


    // $ANTLR start "rule__FindSimilar__Group__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5804:1: rule__FindSimilar__Group__1 : rule__FindSimilar__Group__1__Impl rule__FindSimilar__Group__2 ;
    public final void rule__FindSimilar__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5808:1: ( rule__FindSimilar__Group__1__Impl rule__FindSimilar__Group__2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5809:2: rule__FindSimilar__Group__1__Impl rule__FindSimilar__Group__2
            {
            pushFollow(FOLLOW_rule__FindSimilar__Group__1__Impl_in_rule__FindSimilar__Group__112063);
            rule__FindSimilar__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__FindSimilar__Group__2_in_rule__FindSimilar__Group__112066);
            rule__FindSimilar__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__Group__1"


    // $ANTLR start "rule__FindSimilar__Group__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5816:1: rule__FindSimilar__Group__1__Impl : ( '(' ) ;
    public final void rule__FindSimilar__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5820:1: ( ( '(' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5821:1: ( '(' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5821:1: ( '(' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5822:1: '('
            {
             before(grammarAccess.getFindSimilarAccess().getLeftParenthesisKeyword_1()); 
            match(input,15,FOLLOW_15_in_rule__FindSimilar__Group__1__Impl12094); 
             after(grammarAccess.getFindSimilarAccess().getLeftParenthesisKeyword_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__Group__1__Impl"


    // $ANTLR start "rule__FindSimilar__Group__2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5835:1: rule__FindSimilar__Group__2 : rule__FindSimilar__Group__2__Impl rule__FindSimilar__Group__3 ;
    public final void rule__FindSimilar__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5839:1: ( rule__FindSimilar__Group__2__Impl rule__FindSimilar__Group__3 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5840:2: rule__FindSimilar__Group__2__Impl rule__FindSimilar__Group__3
            {
            pushFollow(FOLLOW_rule__FindSimilar__Group__2__Impl_in_rule__FindSimilar__Group__212125);
            rule__FindSimilar__Group__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__FindSimilar__Group__3_in_rule__FindSimilar__Group__212128);
            rule__FindSimilar__Group__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__Group__2"


    // $ANTLR start "rule__FindSimilar__Group__2__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5847:1: rule__FindSimilar__Group__2__Impl : ( ( rule__FindSimilar__MatrixAssignment_2 ) ) ;
    public final void rule__FindSimilar__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5851:1: ( ( ( rule__FindSimilar__MatrixAssignment_2 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5852:1: ( ( rule__FindSimilar__MatrixAssignment_2 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5852:1: ( ( rule__FindSimilar__MatrixAssignment_2 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5853:1: ( rule__FindSimilar__MatrixAssignment_2 )
            {
             before(grammarAccess.getFindSimilarAccess().getMatrixAssignment_2()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5854:1: ( rule__FindSimilar__MatrixAssignment_2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5854:2: rule__FindSimilar__MatrixAssignment_2
            {
            pushFollow(FOLLOW_rule__FindSimilar__MatrixAssignment_2_in_rule__FindSimilar__Group__2__Impl12155);
            rule__FindSimilar__MatrixAssignment_2();

            state._fsp--;


            }

             after(grammarAccess.getFindSimilarAccess().getMatrixAssignment_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__Group__2__Impl"


    // $ANTLR start "rule__FindSimilar__Group__3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5864:1: rule__FindSimilar__Group__3 : rule__FindSimilar__Group__3__Impl rule__FindSimilar__Group__4 ;
    public final void rule__FindSimilar__Group__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5868:1: ( rule__FindSimilar__Group__3__Impl rule__FindSimilar__Group__4 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5869:2: rule__FindSimilar__Group__3__Impl rule__FindSimilar__Group__4
            {
            pushFollow(FOLLOW_rule__FindSimilar__Group__3__Impl_in_rule__FindSimilar__Group__312185);
            rule__FindSimilar__Group__3__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__FindSimilar__Group__4_in_rule__FindSimilar__Group__312188);
            rule__FindSimilar__Group__4();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__Group__3"


    // $ANTLR start "rule__FindSimilar__Group__3__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5876:1: rule__FindSimilar__Group__3__Impl : ( ',' ) ;
    public final void rule__FindSimilar__Group__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5880:1: ( ( ',' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5881:1: ( ',' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5881:1: ( ',' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5882:1: ','
            {
             before(grammarAccess.getFindSimilarAccess().getCommaKeyword_3()); 
            match(input,14,FOLLOW_14_in_rule__FindSimilar__Group__3__Impl12216); 
             after(grammarAccess.getFindSimilarAccess().getCommaKeyword_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__Group__3__Impl"


    // $ANTLR start "rule__FindSimilar__Group__4"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5895:1: rule__FindSimilar__Group__4 : rule__FindSimilar__Group__4__Impl rule__FindSimilar__Group__5 ;
    public final void rule__FindSimilar__Group__4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5899:1: ( rule__FindSimilar__Group__4__Impl rule__FindSimilar__Group__5 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5900:2: rule__FindSimilar__Group__4__Impl rule__FindSimilar__Group__5
            {
            pushFollow(FOLLOW_rule__FindSimilar__Group__4__Impl_in_rule__FindSimilar__Group__412247);
            rule__FindSimilar__Group__4__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__FindSimilar__Group__5_in_rule__FindSimilar__Group__412250);
            rule__FindSimilar__Group__5();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__Group__4"


    // $ANTLR start "rule__FindSimilar__Group__4__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5907:1: rule__FindSimilar__Group__4__Impl : ( ( rule__FindSimilar__Alternatives_4 ) ) ;
    public final void rule__FindSimilar__Group__4__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5911:1: ( ( ( rule__FindSimilar__Alternatives_4 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5912:1: ( ( rule__FindSimilar__Alternatives_4 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5912:1: ( ( rule__FindSimilar__Alternatives_4 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5913:1: ( rule__FindSimilar__Alternatives_4 )
            {
             before(grammarAccess.getFindSimilarAccess().getAlternatives_4()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5914:1: ( rule__FindSimilar__Alternatives_4 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5914:2: rule__FindSimilar__Alternatives_4
            {
            pushFollow(FOLLOW_rule__FindSimilar__Alternatives_4_in_rule__FindSimilar__Group__4__Impl12277);
            rule__FindSimilar__Alternatives_4();

            state._fsp--;


            }

             after(grammarAccess.getFindSimilarAccess().getAlternatives_4()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__Group__4__Impl"


    // $ANTLR start "rule__FindSimilar__Group__5"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5924:1: rule__FindSimilar__Group__5 : rule__FindSimilar__Group__5__Impl rule__FindSimilar__Group__6 ;
    public final void rule__FindSimilar__Group__5() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5928:1: ( rule__FindSimilar__Group__5__Impl rule__FindSimilar__Group__6 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5929:2: rule__FindSimilar__Group__5__Impl rule__FindSimilar__Group__6
            {
            pushFollow(FOLLOW_rule__FindSimilar__Group__5__Impl_in_rule__FindSimilar__Group__512307);
            rule__FindSimilar__Group__5__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__FindSimilar__Group__6_in_rule__FindSimilar__Group__512310);
            rule__FindSimilar__Group__6();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__Group__5"


    // $ANTLR start "rule__FindSimilar__Group__5__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5936:1: rule__FindSimilar__Group__5__Impl : ( ',' ) ;
    public final void rule__FindSimilar__Group__5__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5940:1: ( ( ',' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5941:1: ( ',' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5941:1: ( ',' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5942:1: ','
            {
             before(grammarAccess.getFindSimilarAccess().getCommaKeyword_5()); 
            match(input,14,FOLLOW_14_in_rule__FindSimilar__Group__5__Impl12338); 
             after(grammarAccess.getFindSimilarAccess().getCommaKeyword_5()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__Group__5__Impl"


    // $ANTLR start "rule__FindSimilar__Group__6"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5955:1: rule__FindSimilar__Group__6 : rule__FindSimilar__Group__6__Impl rule__FindSimilar__Group__7 ;
    public final void rule__FindSimilar__Group__6() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5959:1: ( rule__FindSimilar__Group__6__Impl rule__FindSimilar__Group__7 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5960:2: rule__FindSimilar__Group__6__Impl rule__FindSimilar__Group__7
            {
            pushFollow(FOLLOW_rule__FindSimilar__Group__6__Impl_in_rule__FindSimilar__Group__612369);
            rule__FindSimilar__Group__6__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__FindSimilar__Group__7_in_rule__FindSimilar__Group__612372);
            rule__FindSimilar__Group__7();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__Group__6"


    // $ANTLR start "rule__FindSimilar__Group__6__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5967:1: rule__FindSimilar__Group__6__Impl : ( ( rule__FindSimilar__Alternatives_6 ) ) ;
    public final void rule__FindSimilar__Group__6__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5971:1: ( ( ( rule__FindSimilar__Alternatives_6 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5972:1: ( ( rule__FindSimilar__Alternatives_6 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5972:1: ( ( rule__FindSimilar__Alternatives_6 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5973:1: ( rule__FindSimilar__Alternatives_6 )
            {
             before(grammarAccess.getFindSimilarAccess().getAlternatives_6()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5974:1: ( rule__FindSimilar__Alternatives_6 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5974:2: rule__FindSimilar__Alternatives_6
            {
            pushFollow(FOLLOW_rule__FindSimilar__Alternatives_6_in_rule__FindSimilar__Group__6__Impl12399);
            rule__FindSimilar__Alternatives_6();

            state._fsp--;


            }

             after(grammarAccess.getFindSimilarAccess().getAlternatives_6()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__Group__6__Impl"


    // $ANTLR start "rule__FindSimilar__Group__7"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5984:1: rule__FindSimilar__Group__7 : rule__FindSimilar__Group__7__Impl ;
    public final void rule__FindSimilar__Group__7() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5988:1: ( rule__FindSimilar__Group__7__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5989:2: rule__FindSimilar__Group__7__Impl
            {
            pushFollow(FOLLOW_rule__FindSimilar__Group__7__Impl_in_rule__FindSimilar__Group__712429);
            rule__FindSimilar__Group__7__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__Group__7"


    // $ANTLR start "rule__FindSimilar__Group__7__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5995:1: rule__FindSimilar__Group__7__Impl : ( ')' ) ;
    public final void rule__FindSimilar__Group__7__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:5999:1: ( ( ')' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6000:1: ( ')' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6000:1: ( ')' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6001:1: ')'
            {
             before(grammarAccess.getFindSimilarAccess().getRightParenthesisKeyword_7()); 
            match(input,16,FOLLOW_16_in_rule__FindSimilar__Group__7__Impl12457); 
             after(grammarAccess.getFindSimilarAccess().getRightParenthesisKeyword_7()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__Group__7__Impl"


    // $ANTLR start "rule__Number__Group__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6031:1: rule__Number__Group__0 : rule__Number__Group__0__Impl rule__Number__Group__1 ;
    public final void rule__Number__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6035:1: ( rule__Number__Group__0__Impl rule__Number__Group__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6036:2: rule__Number__Group__0__Impl rule__Number__Group__1
            {
            pushFollow(FOLLOW_rule__Number__Group__0__Impl_in_rule__Number__Group__012505);
            rule__Number__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Number__Group__1_in_rule__Number__Group__012508);
            rule__Number__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Number__Group__0"


    // $ANTLR start "rule__Number__Group__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6043:1: rule__Number__Group__0__Impl : ( ( rule__Number__IntegerAssignment_0 ) ) ;
    public final void rule__Number__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6047:1: ( ( ( rule__Number__IntegerAssignment_0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6048:1: ( ( rule__Number__IntegerAssignment_0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6048:1: ( ( rule__Number__IntegerAssignment_0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6049:1: ( rule__Number__IntegerAssignment_0 )
            {
             before(grammarAccess.getNumberAccess().getIntegerAssignment_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6050:1: ( rule__Number__IntegerAssignment_0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6050:2: rule__Number__IntegerAssignment_0
            {
            pushFollow(FOLLOW_rule__Number__IntegerAssignment_0_in_rule__Number__Group__0__Impl12535);
            rule__Number__IntegerAssignment_0();

            state._fsp--;


            }

             after(grammarAccess.getNumberAccess().getIntegerAssignment_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Number__Group__0__Impl"


    // $ANTLR start "rule__Number__Group__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6060:1: rule__Number__Group__1 : rule__Number__Group__1__Impl ;
    public final void rule__Number__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6064:1: ( rule__Number__Group__1__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6065:2: rule__Number__Group__1__Impl
            {
            pushFollow(FOLLOW_rule__Number__Group__1__Impl_in_rule__Number__Group__112565);
            rule__Number__Group__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Number__Group__1"


    // $ANTLR start "rule__Number__Group__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6071:1: rule__Number__Group__1__Impl : ( ( rule__Number__Group_1__0 )? ) ;
    public final void rule__Number__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6075:1: ( ( ( rule__Number__Group_1__0 )? ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6076:1: ( ( rule__Number__Group_1__0 )? )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6076:1: ( ( rule__Number__Group_1__0 )? )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6077:1: ( rule__Number__Group_1__0 )?
            {
             before(grammarAccess.getNumberAccess().getGroup_1()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6078:1: ( rule__Number__Group_1__0 )?
            int alt53=2;
            int LA53_0 = input.LA(1);

            if ( (LA53_0==18) ) {
                alt53=1;
            }
            switch (alt53) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6078:2: rule__Number__Group_1__0
                    {
                    pushFollow(FOLLOW_rule__Number__Group_1__0_in_rule__Number__Group__1__Impl12592);
                    rule__Number__Group_1__0();

                    state._fsp--;


                    }
                    break;

            }

             after(grammarAccess.getNumberAccess().getGroup_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Number__Group__1__Impl"


    // $ANTLR start "rule__Number__Group_1__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6092:1: rule__Number__Group_1__0 : rule__Number__Group_1__0__Impl rule__Number__Group_1__1 ;
    public final void rule__Number__Group_1__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6096:1: ( rule__Number__Group_1__0__Impl rule__Number__Group_1__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6097:2: rule__Number__Group_1__0__Impl rule__Number__Group_1__1
            {
            pushFollow(FOLLOW_rule__Number__Group_1__0__Impl_in_rule__Number__Group_1__012627);
            rule__Number__Group_1__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Number__Group_1__1_in_rule__Number__Group_1__012630);
            rule__Number__Group_1__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Number__Group_1__0"


    // $ANTLR start "rule__Number__Group_1__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6104:1: rule__Number__Group_1__0__Impl : ( '.' ) ;
    public final void rule__Number__Group_1__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6108:1: ( ( '.' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6109:1: ( '.' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6109:1: ( '.' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6110:1: '.'
            {
             before(grammarAccess.getNumberAccess().getFullStopKeyword_1_0()); 
            match(input,18,FOLLOW_18_in_rule__Number__Group_1__0__Impl12658); 
             after(grammarAccess.getNumberAccess().getFullStopKeyword_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Number__Group_1__0__Impl"


    // $ANTLR start "rule__Number__Group_1__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6123:1: rule__Number__Group_1__1 : rule__Number__Group_1__1__Impl ;
    public final void rule__Number__Group_1__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6127:1: ( rule__Number__Group_1__1__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6128:2: rule__Number__Group_1__1__Impl
            {
            pushFollow(FOLLOW_rule__Number__Group_1__1__Impl_in_rule__Number__Group_1__112689);
            rule__Number__Group_1__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Number__Group_1__1"


    // $ANTLR start "rule__Number__Group_1__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6134:1: rule__Number__Group_1__1__Impl : ( ( rule__Number__DecimalAssignment_1_1 ) ) ;
    public final void rule__Number__Group_1__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6138:1: ( ( ( rule__Number__DecimalAssignment_1_1 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6139:1: ( ( rule__Number__DecimalAssignment_1_1 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6139:1: ( ( rule__Number__DecimalAssignment_1_1 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6140:1: ( rule__Number__DecimalAssignment_1_1 )
            {
             before(grammarAccess.getNumberAccess().getDecimalAssignment_1_1()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6141:1: ( rule__Number__DecimalAssignment_1_1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6141:2: rule__Number__DecimalAssignment_1_1
            {
            pushFollow(FOLLOW_rule__Number__DecimalAssignment_1_1_in_rule__Number__Group_1__1__Impl12716);
            rule__Number__DecimalAssignment_1_1();

            state._fsp--;


            }

             after(grammarAccess.getNumberAccess().getDecimalAssignment_1_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Number__Group_1__1__Impl"


    // $ANTLR start "rule__Archive__Group__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6155:1: rule__Archive__Group__0 : rule__Archive__Group__0__Impl rule__Archive__Group__1 ;
    public final void rule__Archive__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6159:1: ( rule__Archive__Group__0__Impl rule__Archive__Group__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6160:2: rule__Archive__Group__0__Impl rule__Archive__Group__1
            {
            pushFollow(FOLLOW_rule__Archive__Group__0__Impl_in_rule__Archive__Group__012750);
            rule__Archive__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Archive__Group__1_in_rule__Archive__Group__012753);
            rule__Archive__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Archive__Group__0"


    // $ANTLR start "rule__Archive__Group__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6167:1: rule__Archive__Group__0__Impl : ( ( rule__Archive__FolderAssignment_0 )? ) ;
    public final void rule__Archive__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6171:1: ( ( ( rule__Archive__FolderAssignment_0 )? ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6172:1: ( ( rule__Archive__FolderAssignment_0 )? )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6172:1: ( ( rule__Archive__FolderAssignment_0 )? )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6173:1: ( rule__Archive__FolderAssignment_0 )?
            {
             before(grammarAccess.getArchiveAccess().getFolderAssignment_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6174:1: ( rule__Archive__FolderAssignment_0 )?
            int alt54=2;
            int LA54_0 = input.LA(1);

            if ( (LA54_0==37) ) {
                alt54=1;
            }
            else if ( (LA54_0==RULE_ID) ) {
                int LA54_2 = input.LA(2);

                if ( (LA54_2==38) ) {
                    alt54=1;
                }
            }
            switch (alt54) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6174:2: rule__Archive__FolderAssignment_0
                    {
                    pushFollow(FOLLOW_rule__Archive__FolderAssignment_0_in_rule__Archive__Group__0__Impl12780);
                    rule__Archive__FolderAssignment_0();

                    state._fsp--;


                    }
                    break;

            }

             after(grammarAccess.getArchiveAccess().getFolderAssignment_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Archive__Group__0__Impl"


    // $ANTLR start "rule__Archive__Group__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6184:1: rule__Archive__Group__1 : rule__Archive__Group__1__Impl rule__Archive__Group__2 ;
    public final void rule__Archive__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6188:1: ( rule__Archive__Group__1__Impl rule__Archive__Group__2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6189:2: rule__Archive__Group__1__Impl rule__Archive__Group__2
            {
            pushFollow(FOLLOW_rule__Archive__Group__1__Impl_in_rule__Archive__Group__112811);
            rule__Archive__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Archive__Group__2_in_rule__Archive__Group__112814);
            rule__Archive__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Archive__Group__1"


    // $ANTLR start "rule__Archive__Group__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6196:1: rule__Archive__Group__1__Impl : ( ( rule__Archive__ArqAssignment_1 ) ) ;
    public final void rule__Archive__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6200:1: ( ( ( rule__Archive__ArqAssignment_1 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6201:1: ( ( rule__Archive__ArqAssignment_1 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6201:1: ( ( rule__Archive__ArqAssignment_1 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6202:1: ( rule__Archive__ArqAssignment_1 )
            {
             before(grammarAccess.getArchiveAccess().getArqAssignment_1()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6203:1: ( rule__Archive__ArqAssignment_1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6203:2: rule__Archive__ArqAssignment_1
            {
            pushFollow(FOLLOW_rule__Archive__ArqAssignment_1_in_rule__Archive__Group__1__Impl12841);
            rule__Archive__ArqAssignment_1();

            state._fsp--;


            }

             after(grammarAccess.getArchiveAccess().getArqAssignment_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Archive__Group__1__Impl"


    // $ANTLR start "rule__Archive__Group__2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6213:1: rule__Archive__Group__2 : rule__Archive__Group__2__Impl rule__Archive__Group__3 ;
    public final void rule__Archive__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6217:1: ( rule__Archive__Group__2__Impl rule__Archive__Group__3 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6218:2: rule__Archive__Group__2__Impl rule__Archive__Group__3
            {
            pushFollow(FOLLOW_rule__Archive__Group__2__Impl_in_rule__Archive__Group__212871);
            rule__Archive__Group__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Archive__Group__3_in_rule__Archive__Group__212874);
            rule__Archive__Group__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Archive__Group__2"


    // $ANTLR start "rule__Archive__Group__2__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6225:1: rule__Archive__Group__2__Impl : ( ( rule__Archive__ArqAssignment_2 ) ) ;
    public final void rule__Archive__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6229:1: ( ( ( rule__Archive__ArqAssignment_2 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6230:1: ( ( rule__Archive__ArqAssignment_2 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6230:1: ( ( rule__Archive__ArqAssignment_2 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6231:1: ( rule__Archive__ArqAssignment_2 )
            {
             before(grammarAccess.getArchiveAccess().getArqAssignment_2()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6232:1: ( rule__Archive__ArqAssignment_2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6232:2: rule__Archive__ArqAssignment_2
            {
            pushFollow(FOLLOW_rule__Archive__ArqAssignment_2_in_rule__Archive__Group__2__Impl12901);
            rule__Archive__ArqAssignment_2();

            state._fsp--;


            }

             after(grammarAccess.getArchiveAccess().getArqAssignment_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Archive__Group__2__Impl"


    // $ANTLR start "rule__Archive__Group__3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6242:1: rule__Archive__Group__3 : rule__Archive__Group__3__Impl ;
    public final void rule__Archive__Group__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6246:1: ( rule__Archive__Group__3__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6247:2: rule__Archive__Group__3__Impl
            {
            pushFollow(FOLLOW_rule__Archive__Group__3__Impl_in_rule__Archive__Group__312931);
            rule__Archive__Group__3__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Archive__Group__3"


    // $ANTLR start "rule__Archive__Group__3__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6253:1: rule__Archive__Group__3__Impl : ( ( rule__Archive__ArqAssignment_3 ) ) ;
    public final void rule__Archive__Group__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6257:1: ( ( ( rule__Archive__ArqAssignment_3 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6258:1: ( ( rule__Archive__ArqAssignment_3 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6258:1: ( ( rule__Archive__ArqAssignment_3 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6259:1: ( rule__Archive__ArqAssignment_3 )
            {
             before(grammarAccess.getArchiveAccess().getArqAssignment_3()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6260:1: ( rule__Archive__ArqAssignment_3 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6260:2: rule__Archive__ArqAssignment_3
            {
            pushFollow(FOLLOW_rule__Archive__ArqAssignment_3_in_rule__Archive__Group__3__Impl12958);
            rule__Archive__ArqAssignment_3();

            state._fsp--;


            }

             after(grammarAccess.getArchiveAccess().getArqAssignment_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Archive__Group__3__Impl"


    // $ANTLR start "rule__LinuxFolder__Group__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6278:1: rule__LinuxFolder__Group__0 : rule__LinuxFolder__Group__0__Impl rule__LinuxFolder__Group__1 ;
    public final void rule__LinuxFolder__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6282:1: ( rule__LinuxFolder__Group__0__Impl rule__LinuxFolder__Group__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6283:2: rule__LinuxFolder__Group__0__Impl rule__LinuxFolder__Group__1
            {
            pushFollow(FOLLOW_rule__LinuxFolder__Group__0__Impl_in_rule__LinuxFolder__Group__012996);
            rule__LinuxFolder__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__LinuxFolder__Group__1_in_rule__LinuxFolder__Group__012999);
            rule__LinuxFolder__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__LinuxFolder__Group__0"


    // $ANTLR start "rule__LinuxFolder__Group__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6290:1: rule__LinuxFolder__Group__0__Impl : ( ( rule__LinuxFolder__UnixFolderAssignment_0 ) ) ;
    public final void rule__LinuxFolder__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6294:1: ( ( ( rule__LinuxFolder__UnixFolderAssignment_0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6295:1: ( ( rule__LinuxFolder__UnixFolderAssignment_0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6295:1: ( ( rule__LinuxFolder__UnixFolderAssignment_0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6296:1: ( rule__LinuxFolder__UnixFolderAssignment_0 )
            {
             before(grammarAccess.getLinuxFolderAccess().getUnixFolderAssignment_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6297:1: ( rule__LinuxFolder__UnixFolderAssignment_0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6297:2: rule__LinuxFolder__UnixFolderAssignment_0
            {
            pushFollow(FOLLOW_rule__LinuxFolder__UnixFolderAssignment_0_in_rule__LinuxFolder__Group__0__Impl13026);
            rule__LinuxFolder__UnixFolderAssignment_0();

            state._fsp--;


            }

             after(grammarAccess.getLinuxFolderAccess().getUnixFolderAssignment_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__LinuxFolder__Group__0__Impl"


    // $ANTLR start "rule__LinuxFolder__Group__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6307:1: rule__LinuxFolder__Group__1 : rule__LinuxFolder__Group__1__Impl ;
    public final void rule__LinuxFolder__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6311:1: ( rule__LinuxFolder__Group__1__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6312:2: rule__LinuxFolder__Group__1__Impl
            {
            pushFollow(FOLLOW_rule__LinuxFolder__Group__1__Impl_in_rule__LinuxFolder__Group__113056);
            rule__LinuxFolder__Group__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__LinuxFolder__Group__1"


    // $ANTLR start "rule__LinuxFolder__Group__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6318:1: rule__LinuxFolder__Group__1__Impl : ( ( rule__LinuxFolder__Group_1__0 )* ) ;
    public final void rule__LinuxFolder__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6322:1: ( ( ( rule__LinuxFolder__Group_1__0 )* ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6323:1: ( ( rule__LinuxFolder__Group_1__0 )* )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6323:1: ( ( rule__LinuxFolder__Group_1__0 )* )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6324:1: ( rule__LinuxFolder__Group_1__0 )*
            {
             before(grammarAccess.getLinuxFolderAccess().getGroup_1()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6325:1: ( rule__LinuxFolder__Group_1__0 )*
            loop55:
            do {
                int alt55=2;
                int LA55_0 = input.LA(1);

                if ( (LA55_0==RULE_ID) ) {
                    int LA55_2 = input.LA(2);

                    if ( (LA55_2==37) ) {
                        alt55=1;
                    }


                }


                switch (alt55) {
            	case 1 :
            	    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6325:2: rule__LinuxFolder__Group_1__0
            	    {
            	    pushFollow(FOLLOW_rule__LinuxFolder__Group_1__0_in_rule__LinuxFolder__Group__1__Impl13083);
            	    rule__LinuxFolder__Group_1__0();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop55;
                }
            } while (true);

             after(grammarAccess.getLinuxFolderAccess().getGroup_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__LinuxFolder__Group__1__Impl"


    // $ANTLR start "rule__LinuxFolder__Group_1__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6339:1: rule__LinuxFolder__Group_1__0 : rule__LinuxFolder__Group_1__0__Impl rule__LinuxFolder__Group_1__1 ;
    public final void rule__LinuxFolder__Group_1__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6343:1: ( rule__LinuxFolder__Group_1__0__Impl rule__LinuxFolder__Group_1__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6344:2: rule__LinuxFolder__Group_1__0__Impl rule__LinuxFolder__Group_1__1
            {
            pushFollow(FOLLOW_rule__LinuxFolder__Group_1__0__Impl_in_rule__LinuxFolder__Group_1__013118);
            rule__LinuxFolder__Group_1__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__LinuxFolder__Group_1__1_in_rule__LinuxFolder__Group_1__013121);
            rule__LinuxFolder__Group_1__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__LinuxFolder__Group_1__0"


    // $ANTLR start "rule__LinuxFolder__Group_1__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6351:1: rule__LinuxFolder__Group_1__0__Impl : ( ( rule__LinuxFolder__UnixFolderAssignment_1_0 ) ) ;
    public final void rule__LinuxFolder__Group_1__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6355:1: ( ( ( rule__LinuxFolder__UnixFolderAssignment_1_0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6356:1: ( ( rule__LinuxFolder__UnixFolderAssignment_1_0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6356:1: ( ( rule__LinuxFolder__UnixFolderAssignment_1_0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6357:1: ( rule__LinuxFolder__UnixFolderAssignment_1_0 )
            {
             before(grammarAccess.getLinuxFolderAccess().getUnixFolderAssignment_1_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6358:1: ( rule__LinuxFolder__UnixFolderAssignment_1_0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6358:2: rule__LinuxFolder__UnixFolderAssignment_1_0
            {
            pushFollow(FOLLOW_rule__LinuxFolder__UnixFolderAssignment_1_0_in_rule__LinuxFolder__Group_1__0__Impl13148);
            rule__LinuxFolder__UnixFolderAssignment_1_0();

            state._fsp--;


            }

             after(grammarAccess.getLinuxFolderAccess().getUnixFolderAssignment_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__LinuxFolder__Group_1__0__Impl"


    // $ANTLR start "rule__LinuxFolder__Group_1__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6368:1: rule__LinuxFolder__Group_1__1 : rule__LinuxFolder__Group_1__1__Impl ;
    public final void rule__LinuxFolder__Group_1__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6372:1: ( rule__LinuxFolder__Group_1__1__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6373:2: rule__LinuxFolder__Group_1__1__Impl
            {
            pushFollow(FOLLOW_rule__LinuxFolder__Group_1__1__Impl_in_rule__LinuxFolder__Group_1__113178);
            rule__LinuxFolder__Group_1__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__LinuxFolder__Group_1__1"


    // $ANTLR start "rule__LinuxFolder__Group_1__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6379:1: rule__LinuxFolder__Group_1__1__Impl : ( ( rule__LinuxFolder__UnixFolderAssignment_1_1 ) ) ;
    public final void rule__LinuxFolder__Group_1__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6383:1: ( ( ( rule__LinuxFolder__UnixFolderAssignment_1_1 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6384:1: ( ( rule__LinuxFolder__UnixFolderAssignment_1_1 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6384:1: ( ( rule__LinuxFolder__UnixFolderAssignment_1_1 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6385:1: ( rule__LinuxFolder__UnixFolderAssignment_1_1 )
            {
             before(grammarAccess.getLinuxFolderAccess().getUnixFolderAssignment_1_1()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6386:1: ( rule__LinuxFolder__UnixFolderAssignment_1_1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6386:2: rule__LinuxFolder__UnixFolderAssignment_1_1
            {
            pushFollow(FOLLOW_rule__LinuxFolder__UnixFolderAssignment_1_1_in_rule__LinuxFolder__Group_1__1__Impl13205);
            rule__LinuxFolder__UnixFolderAssignment_1_1();

            state._fsp--;


            }

             after(grammarAccess.getLinuxFolderAccess().getUnixFolderAssignment_1_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__LinuxFolder__Group_1__1__Impl"


    // $ANTLR start "rule__WindowsFolder__Group__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6400:1: rule__WindowsFolder__Group__0 : rule__WindowsFolder__Group__0__Impl rule__WindowsFolder__Group__1 ;
    public final void rule__WindowsFolder__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6404:1: ( rule__WindowsFolder__Group__0__Impl rule__WindowsFolder__Group__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6405:2: rule__WindowsFolder__Group__0__Impl rule__WindowsFolder__Group__1
            {
            pushFollow(FOLLOW_rule__WindowsFolder__Group__0__Impl_in_rule__WindowsFolder__Group__013239);
            rule__WindowsFolder__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__WindowsFolder__Group__1_in_rule__WindowsFolder__Group__013242);
            rule__WindowsFolder__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__WindowsFolder__Group__0"


    // $ANTLR start "rule__WindowsFolder__Group__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6412:1: rule__WindowsFolder__Group__0__Impl : ( ( rule__WindowsFolder__WindowsFolderAssignment_0 ) ) ;
    public final void rule__WindowsFolder__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6416:1: ( ( ( rule__WindowsFolder__WindowsFolderAssignment_0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6417:1: ( ( rule__WindowsFolder__WindowsFolderAssignment_0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6417:1: ( ( rule__WindowsFolder__WindowsFolderAssignment_0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6418:1: ( rule__WindowsFolder__WindowsFolderAssignment_0 )
            {
             before(grammarAccess.getWindowsFolderAccess().getWindowsFolderAssignment_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6419:1: ( rule__WindowsFolder__WindowsFolderAssignment_0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6419:2: rule__WindowsFolder__WindowsFolderAssignment_0
            {
            pushFollow(FOLLOW_rule__WindowsFolder__WindowsFolderAssignment_0_in_rule__WindowsFolder__Group__0__Impl13269);
            rule__WindowsFolder__WindowsFolderAssignment_0();

            state._fsp--;


            }

             after(grammarAccess.getWindowsFolderAccess().getWindowsFolderAssignment_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__WindowsFolder__Group__0__Impl"


    // $ANTLR start "rule__WindowsFolder__Group__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6429:1: rule__WindowsFolder__Group__1 : rule__WindowsFolder__Group__1__Impl rule__WindowsFolder__Group__2 ;
    public final void rule__WindowsFolder__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6433:1: ( rule__WindowsFolder__Group__1__Impl rule__WindowsFolder__Group__2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6434:2: rule__WindowsFolder__Group__1__Impl rule__WindowsFolder__Group__2
            {
            pushFollow(FOLLOW_rule__WindowsFolder__Group__1__Impl_in_rule__WindowsFolder__Group__113299);
            rule__WindowsFolder__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__WindowsFolder__Group__2_in_rule__WindowsFolder__Group__113302);
            rule__WindowsFolder__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__WindowsFolder__Group__1"


    // $ANTLR start "rule__WindowsFolder__Group__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6441:1: rule__WindowsFolder__Group__1__Impl : ( ( rule__WindowsFolder__WindowsFolderAssignment_1 ) ) ;
    public final void rule__WindowsFolder__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6445:1: ( ( ( rule__WindowsFolder__WindowsFolderAssignment_1 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6446:1: ( ( rule__WindowsFolder__WindowsFolderAssignment_1 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6446:1: ( ( rule__WindowsFolder__WindowsFolderAssignment_1 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6447:1: ( rule__WindowsFolder__WindowsFolderAssignment_1 )
            {
             before(grammarAccess.getWindowsFolderAccess().getWindowsFolderAssignment_1()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6448:1: ( rule__WindowsFolder__WindowsFolderAssignment_1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6448:2: rule__WindowsFolder__WindowsFolderAssignment_1
            {
            pushFollow(FOLLOW_rule__WindowsFolder__WindowsFolderAssignment_1_in_rule__WindowsFolder__Group__1__Impl13329);
            rule__WindowsFolder__WindowsFolderAssignment_1();

            state._fsp--;


            }

             after(grammarAccess.getWindowsFolderAccess().getWindowsFolderAssignment_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__WindowsFolder__Group__1__Impl"


    // $ANTLR start "rule__WindowsFolder__Group__2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6458:1: rule__WindowsFolder__Group__2 : rule__WindowsFolder__Group__2__Impl ;
    public final void rule__WindowsFolder__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6462:1: ( rule__WindowsFolder__Group__2__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6463:2: rule__WindowsFolder__Group__2__Impl
            {
            pushFollow(FOLLOW_rule__WindowsFolder__Group__2__Impl_in_rule__WindowsFolder__Group__213359);
            rule__WindowsFolder__Group__2__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__WindowsFolder__Group__2"


    // $ANTLR start "rule__WindowsFolder__Group__2__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6469:1: rule__WindowsFolder__Group__2__Impl : ( ( rule__WindowsFolder__Group_2__0 )* ) ;
    public final void rule__WindowsFolder__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6473:1: ( ( ( rule__WindowsFolder__Group_2__0 )* ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6474:1: ( ( rule__WindowsFolder__Group_2__0 )* )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6474:1: ( ( rule__WindowsFolder__Group_2__0 )* )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6475:1: ( rule__WindowsFolder__Group_2__0 )*
            {
             before(grammarAccess.getWindowsFolderAccess().getGroup_2()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6476:1: ( rule__WindowsFolder__Group_2__0 )*
            loop56:
            do {
                int alt56=2;
                int LA56_0 = input.LA(1);

                if ( (LA56_0==RULE_ID) ) {
                    int LA56_2 = input.LA(2);

                    if ( (LA56_2==37) ) {
                        alt56=1;
                    }


                }


                switch (alt56) {
            	case 1 :
            	    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6476:2: rule__WindowsFolder__Group_2__0
            	    {
            	    pushFollow(FOLLOW_rule__WindowsFolder__Group_2__0_in_rule__WindowsFolder__Group__2__Impl13386);
            	    rule__WindowsFolder__Group_2__0();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop56;
                }
            } while (true);

             after(grammarAccess.getWindowsFolderAccess().getGroup_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__WindowsFolder__Group__2__Impl"


    // $ANTLR start "rule__WindowsFolder__Group_2__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6492:1: rule__WindowsFolder__Group_2__0 : rule__WindowsFolder__Group_2__0__Impl rule__WindowsFolder__Group_2__1 ;
    public final void rule__WindowsFolder__Group_2__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6496:1: ( rule__WindowsFolder__Group_2__0__Impl rule__WindowsFolder__Group_2__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6497:2: rule__WindowsFolder__Group_2__0__Impl rule__WindowsFolder__Group_2__1
            {
            pushFollow(FOLLOW_rule__WindowsFolder__Group_2__0__Impl_in_rule__WindowsFolder__Group_2__013423);
            rule__WindowsFolder__Group_2__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__WindowsFolder__Group_2__1_in_rule__WindowsFolder__Group_2__013426);
            rule__WindowsFolder__Group_2__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__WindowsFolder__Group_2__0"


    // $ANTLR start "rule__WindowsFolder__Group_2__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6504:1: rule__WindowsFolder__Group_2__0__Impl : ( ( rule__WindowsFolder__WindowsFolderAssignment_2_0 ) ) ;
    public final void rule__WindowsFolder__Group_2__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6508:1: ( ( ( rule__WindowsFolder__WindowsFolderAssignment_2_0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6509:1: ( ( rule__WindowsFolder__WindowsFolderAssignment_2_0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6509:1: ( ( rule__WindowsFolder__WindowsFolderAssignment_2_0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6510:1: ( rule__WindowsFolder__WindowsFolderAssignment_2_0 )
            {
             before(grammarAccess.getWindowsFolderAccess().getWindowsFolderAssignment_2_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6511:1: ( rule__WindowsFolder__WindowsFolderAssignment_2_0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6511:2: rule__WindowsFolder__WindowsFolderAssignment_2_0
            {
            pushFollow(FOLLOW_rule__WindowsFolder__WindowsFolderAssignment_2_0_in_rule__WindowsFolder__Group_2__0__Impl13453);
            rule__WindowsFolder__WindowsFolderAssignment_2_0();

            state._fsp--;


            }

             after(grammarAccess.getWindowsFolderAccess().getWindowsFolderAssignment_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__WindowsFolder__Group_2__0__Impl"


    // $ANTLR start "rule__WindowsFolder__Group_2__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6521:1: rule__WindowsFolder__Group_2__1 : rule__WindowsFolder__Group_2__1__Impl ;
    public final void rule__WindowsFolder__Group_2__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6525:1: ( rule__WindowsFolder__Group_2__1__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6526:2: rule__WindowsFolder__Group_2__1__Impl
            {
            pushFollow(FOLLOW_rule__WindowsFolder__Group_2__1__Impl_in_rule__WindowsFolder__Group_2__113483);
            rule__WindowsFolder__Group_2__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__WindowsFolder__Group_2__1"


    // $ANTLR start "rule__WindowsFolder__Group_2__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6532:1: rule__WindowsFolder__Group_2__1__Impl : ( ( rule__WindowsFolder__WindowsFolderAssignment_2_1 ) ) ;
    public final void rule__WindowsFolder__Group_2__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6536:1: ( ( ( rule__WindowsFolder__WindowsFolderAssignment_2_1 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6537:1: ( ( rule__WindowsFolder__WindowsFolderAssignment_2_1 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6537:1: ( ( rule__WindowsFolder__WindowsFolderAssignment_2_1 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6538:1: ( rule__WindowsFolder__WindowsFolderAssignment_2_1 )
            {
             before(grammarAccess.getWindowsFolderAccess().getWindowsFolderAssignment_2_1()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6539:1: ( rule__WindowsFolder__WindowsFolderAssignment_2_1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6539:2: rule__WindowsFolder__WindowsFolderAssignment_2_1
            {
            pushFollow(FOLLOW_rule__WindowsFolder__WindowsFolderAssignment_2_1_in_rule__WindowsFolder__Group_2__1__Impl13510);
            rule__WindowsFolder__WindowsFolderAssignment_2_1();

            state._fsp--;


            }

             after(grammarAccess.getWindowsFolderAccess().getWindowsFolderAssignment_2_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__WindowsFolder__Group_2__1__Impl"


    // $ANTLR start "rule__ArrayElement__Group__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6553:1: rule__ArrayElement__Group__0 : rule__ArrayElement__Group__0__Impl rule__ArrayElement__Group__1 ;
    public final void rule__ArrayElement__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6557:1: ( rule__ArrayElement__Group__0__Impl rule__ArrayElement__Group__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6558:2: rule__ArrayElement__Group__0__Impl rule__ArrayElement__Group__1
            {
            pushFollow(FOLLOW_rule__ArrayElement__Group__0__Impl_in_rule__ArrayElement__Group__013544);
            rule__ArrayElement__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__ArrayElement__Group__1_in_rule__ArrayElement__Group__013547);
            rule__ArrayElement__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayElement__Group__0"


    // $ANTLR start "rule__ArrayElement__Group__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6565:1: rule__ArrayElement__Group__0__Impl : ( ( rule__ArrayElement__ArrayAssignment_0 ) ) ;
    public final void rule__ArrayElement__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6569:1: ( ( ( rule__ArrayElement__ArrayAssignment_0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6570:1: ( ( rule__ArrayElement__ArrayAssignment_0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6570:1: ( ( rule__ArrayElement__ArrayAssignment_0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6571:1: ( rule__ArrayElement__ArrayAssignment_0 )
            {
             before(grammarAccess.getArrayElementAccess().getArrayAssignment_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6572:1: ( rule__ArrayElement__ArrayAssignment_0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6572:2: rule__ArrayElement__ArrayAssignment_0
            {
            pushFollow(FOLLOW_rule__ArrayElement__ArrayAssignment_0_in_rule__ArrayElement__Group__0__Impl13574);
            rule__ArrayElement__ArrayAssignment_0();

            state._fsp--;


            }

             after(grammarAccess.getArrayElementAccess().getArrayAssignment_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayElement__Group__0__Impl"


    // $ANTLR start "rule__ArrayElement__Group__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6582:1: rule__ArrayElement__Group__1 : rule__ArrayElement__Group__1__Impl ;
    public final void rule__ArrayElement__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6586:1: ( rule__ArrayElement__Group__1__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6587:2: rule__ArrayElement__Group__1__Impl
            {
            pushFollow(FOLLOW_rule__ArrayElement__Group__1__Impl_in_rule__ArrayElement__Group__113604);
            rule__ArrayElement__Group__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayElement__Group__1"


    // $ANTLR start "rule__ArrayElement__Group__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6593:1: rule__ArrayElement__Group__1__Impl : ( ( rule__ArrayElement__IdxAssignment_1 ) ) ;
    public final void rule__ArrayElement__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6597:1: ( ( ( rule__ArrayElement__IdxAssignment_1 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6598:1: ( ( rule__ArrayElement__IdxAssignment_1 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6598:1: ( ( rule__ArrayElement__IdxAssignment_1 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6599:1: ( rule__ArrayElement__IdxAssignment_1 )
            {
             before(grammarAccess.getArrayElementAccess().getIdxAssignment_1()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6600:1: ( rule__ArrayElement__IdxAssignment_1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6600:2: rule__ArrayElement__IdxAssignment_1
            {
            pushFollow(FOLLOW_rule__ArrayElement__IdxAssignment_1_in_rule__ArrayElement__Group__1__Impl13631);
            rule__ArrayElement__IdxAssignment_1();

            state._fsp--;


            }

             after(grammarAccess.getArrayElementAccess().getIdxAssignment_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayElement__Group__1__Impl"


    // $ANTLR start "rule__Index__Group__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6614:1: rule__Index__Group__0 : rule__Index__Group__0__Impl rule__Index__Group__1 ;
    public final void rule__Index__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6618:1: ( rule__Index__Group__0__Impl rule__Index__Group__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6619:2: rule__Index__Group__0__Impl rule__Index__Group__1
            {
            pushFollow(FOLLOW_rule__Index__Group__0__Impl_in_rule__Index__Group__013665);
            rule__Index__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Index__Group__1_in_rule__Index__Group__013668);
            rule__Index__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Index__Group__0"


    // $ANTLR start "rule__Index__Group__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6626:1: rule__Index__Group__0__Impl : ( '[' ) ;
    public final void rule__Index__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6630:1: ( ( '[' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6631:1: ( '[' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6631:1: ( '[' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6632:1: '['
            {
             before(grammarAccess.getIndexAccess().getLeftSquareBracketKeyword_0()); 
            match(input,23,FOLLOW_23_in_rule__Index__Group__0__Impl13696); 
             after(grammarAccess.getIndexAccess().getLeftSquareBracketKeyword_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Index__Group__0__Impl"


    // $ANTLR start "rule__Index__Group__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6645:1: rule__Index__Group__1 : rule__Index__Group__1__Impl rule__Index__Group__2 ;
    public final void rule__Index__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6649:1: ( rule__Index__Group__1__Impl rule__Index__Group__2 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6650:2: rule__Index__Group__1__Impl rule__Index__Group__2
            {
            pushFollow(FOLLOW_rule__Index__Group__1__Impl_in_rule__Index__Group__113727);
            rule__Index__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Index__Group__2_in_rule__Index__Group__113730);
            rule__Index__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Index__Group__1"


    // $ANTLR start "rule__Index__Group__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6657:1: rule__Index__Group__1__Impl : ( ( rule__Index__Alternatives_1 ) ) ;
    public final void rule__Index__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6661:1: ( ( ( rule__Index__Alternatives_1 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6662:1: ( ( rule__Index__Alternatives_1 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6662:1: ( ( rule__Index__Alternatives_1 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6663:1: ( rule__Index__Alternatives_1 )
            {
             before(grammarAccess.getIndexAccess().getAlternatives_1()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6664:1: ( rule__Index__Alternatives_1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6664:2: rule__Index__Alternatives_1
            {
            pushFollow(FOLLOW_rule__Index__Alternatives_1_in_rule__Index__Group__1__Impl13757);
            rule__Index__Alternatives_1();

            state._fsp--;


            }

             after(grammarAccess.getIndexAccess().getAlternatives_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Index__Group__1__Impl"


    // $ANTLR start "rule__Index__Group__2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6674:1: rule__Index__Group__2 : rule__Index__Group__2__Impl rule__Index__Group__3 ;
    public final void rule__Index__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6678:1: ( rule__Index__Group__2__Impl rule__Index__Group__3 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6679:2: rule__Index__Group__2__Impl rule__Index__Group__3
            {
            pushFollow(FOLLOW_rule__Index__Group__2__Impl_in_rule__Index__Group__213787);
            rule__Index__Group__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Index__Group__3_in_rule__Index__Group__213790);
            rule__Index__Group__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Index__Group__2"


    // $ANTLR start "rule__Index__Group__2__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6686:1: rule__Index__Group__2__Impl : ( ( rule__Index__Group_2__0 )? ) ;
    public final void rule__Index__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6690:1: ( ( ( rule__Index__Group_2__0 )? ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6691:1: ( ( rule__Index__Group_2__0 )? )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6691:1: ( ( rule__Index__Group_2__0 )? )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6692:1: ( rule__Index__Group_2__0 )?
            {
             before(grammarAccess.getIndexAccess().getGroup_2()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6693:1: ( rule__Index__Group_2__0 )?
            int alt57=2;
            int LA57_0 = input.LA(1);

            if ( (LA57_0==14) ) {
                alt57=1;
            }
            switch (alt57) {
                case 1 :
                    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6693:2: rule__Index__Group_2__0
                    {
                    pushFollow(FOLLOW_rule__Index__Group_2__0_in_rule__Index__Group__2__Impl13817);
                    rule__Index__Group_2__0();

                    state._fsp--;


                    }
                    break;

            }

             after(grammarAccess.getIndexAccess().getGroup_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Index__Group__2__Impl"


    // $ANTLR start "rule__Index__Group__3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6703:1: rule__Index__Group__3 : rule__Index__Group__3__Impl ;
    public final void rule__Index__Group__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6707:1: ( rule__Index__Group__3__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6708:2: rule__Index__Group__3__Impl
            {
            pushFollow(FOLLOW_rule__Index__Group__3__Impl_in_rule__Index__Group__313848);
            rule__Index__Group__3__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Index__Group__3"


    // $ANTLR start "rule__Index__Group__3__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6714:1: rule__Index__Group__3__Impl : ( ']' ) ;
    public final void rule__Index__Group__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6718:1: ( ( ']' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6719:1: ( ']' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6719:1: ( ']' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6720:1: ']'
            {
             before(grammarAccess.getIndexAccess().getRightSquareBracketKeyword_3()); 
            match(input,24,FOLLOW_24_in_rule__Index__Group__3__Impl13876); 
             after(grammarAccess.getIndexAccess().getRightSquareBracketKeyword_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Index__Group__3__Impl"


    // $ANTLR start "rule__Index__Group_2__0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6741:1: rule__Index__Group_2__0 : rule__Index__Group_2__0__Impl rule__Index__Group_2__1 ;
    public final void rule__Index__Group_2__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6745:1: ( rule__Index__Group_2__0__Impl rule__Index__Group_2__1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6746:2: rule__Index__Group_2__0__Impl rule__Index__Group_2__1
            {
            pushFollow(FOLLOW_rule__Index__Group_2__0__Impl_in_rule__Index__Group_2__013915);
            rule__Index__Group_2__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Index__Group_2__1_in_rule__Index__Group_2__013918);
            rule__Index__Group_2__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Index__Group_2__0"


    // $ANTLR start "rule__Index__Group_2__0__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6753:1: rule__Index__Group_2__0__Impl : ( ',' ) ;
    public final void rule__Index__Group_2__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6757:1: ( ( ',' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6758:1: ( ',' )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6758:1: ( ',' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6759:1: ','
            {
             before(grammarAccess.getIndexAccess().getCommaKeyword_2_0()); 
            match(input,14,FOLLOW_14_in_rule__Index__Group_2__0__Impl13946); 
             after(grammarAccess.getIndexAccess().getCommaKeyword_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Index__Group_2__0__Impl"


    // $ANTLR start "rule__Index__Group_2__1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6772:1: rule__Index__Group_2__1 : rule__Index__Group_2__1__Impl ;
    public final void rule__Index__Group_2__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6776:1: ( rule__Index__Group_2__1__Impl )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6777:2: rule__Index__Group_2__1__Impl
            {
            pushFollow(FOLLOW_rule__Index__Group_2__1__Impl_in_rule__Index__Group_2__113977);
            rule__Index__Group_2__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Index__Group_2__1"


    // $ANTLR start "rule__Index__Group_2__1__Impl"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6783:1: rule__Index__Group_2__1__Impl : ( ( rule__Index__Alternatives_2_1 ) ) ;
    public final void rule__Index__Group_2__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6787:1: ( ( ( rule__Index__Alternatives_2_1 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6788:1: ( ( rule__Index__Alternatives_2_1 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6788:1: ( ( rule__Index__Alternatives_2_1 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6789:1: ( rule__Index__Alternatives_2_1 )
            {
             before(grammarAccess.getIndexAccess().getAlternatives_2_1()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6790:1: ( rule__Index__Alternatives_2_1 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6790:2: rule__Index__Alternatives_2_1
            {
            pushFollow(FOLLOW_rule__Index__Alternatives_2_1_in_rule__Index__Group_2__1__Impl14004);
            rule__Index__Alternatives_2_1();

            state._fsp--;


            }

             after(grammarAccess.getIndexAccess().getAlternatives_2_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Index__Group_2__1__Impl"


    // $ANTLR start "rule__CRLanguage__ElementsAssignment"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6805:1: rule__CRLanguage__ElementsAssignment : ( ruleElement ) ;
    public final void rule__CRLanguage__ElementsAssignment() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6809:1: ( ( ruleElement ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6810:1: ( ruleElement )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6810:1: ( ruleElement )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6811:1: ruleElement
            {
             before(grammarAccess.getCRLanguageAccess().getElementsElementParserRuleCall_0()); 
            pushFollow(FOLLOW_ruleElement_in_rule__CRLanguage__ElementsAssignment14043);
            ruleElement();

            state._fsp--;

             after(grammarAccess.getCRLanguageAccess().getElementsElementParserRuleCall_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CRLanguage__ElementsAssignment"


    // $ANTLR start "rule__Element__VarDecAssignment_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6820:1: rule__Element__VarDecAssignment_0 : ( ruleVarDec ) ;
    public final void rule__Element__VarDecAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6824:1: ( ( ruleVarDec ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6825:1: ( ruleVarDec )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6825:1: ( ruleVarDec )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6826:1: ruleVarDec
            {
             before(grammarAccess.getElementAccess().getVarDecVarDecParserRuleCall_0_0()); 
            pushFollow(FOLLOW_ruleVarDec_in_rule__Element__VarDecAssignment_014074);
            ruleVarDec();

            state._fsp--;

             after(grammarAccess.getElementAccess().getVarDecVarDecParserRuleCall_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Element__VarDecAssignment_0"


    // $ANTLR start "rule__Element__AssignmentAssignment_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6835:1: rule__Element__AssignmentAssignment_1 : ( ruleAssignment ) ;
    public final void rule__Element__AssignmentAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6839:1: ( ( ruleAssignment ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6840:1: ( ruleAssignment )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6840:1: ( ruleAssignment )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6841:1: ruleAssignment
            {
             before(grammarAccess.getElementAccess().getAssignmentAssignmentParserRuleCall_1_0()); 
            pushFollow(FOLLOW_ruleAssignment_in_rule__Element__AssignmentAssignment_114105);
            ruleAssignment();

            state._fsp--;

             after(grammarAccess.getElementAccess().getAssignmentAssignmentParserRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Element__AssignmentAssignment_1"


    // $ANTLR start "rule__Element__ArrayMethodAssignment_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6850:1: rule__Element__ArrayMethodAssignment_2 : ( ruleArrayMethod ) ;
    public final void rule__Element__ArrayMethodAssignment_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6854:1: ( ( ruleArrayMethod ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6855:1: ( ruleArrayMethod )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6855:1: ( ruleArrayMethod )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6856:1: ruleArrayMethod
            {
             before(grammarAccess.getElementAccess().getArrayMethodArrayMethodParserRuleCall_2_0()); 
            pushFollow(FOLLOW_ruleArrayMethod_in_rule__Element__ArrayMethodAssignment_214136);
            ruleArrayMethod();

            state._fsp--;

             after(grammarAccess.getElementAccess().getArrayMethodArrayMethodParserRuleCall_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Element__ArrayMethodAssignment_2"


    // $ANTLR start "rule__Element__FunctionAssignment_3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6865:1: rule__Element__FunctionAssignment_3 : ( ruleFunction ) ;
    public final void rule__Element__FunctionAssignment_3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6869:1: ( ( ruleFunction ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6870:1: ( ruleFunction )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6870:1: ( ruleFunction )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6871:1: ruleFunction
            {
             before(grammarAccess.getElementAccess().getFunctionFunctionParserRuleCall_3_0()); 
            pushFollow(FOLLOW_ruleFunction_in_rule__Element__FunctionAssignment_314167);
            ruleFunction();

            state._fsp--;

             after(grammarAccess.getElementAccess().getFunctionFunctionParserRuleCall_3_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Element__FunctionAssignment_3"


    // $ANTLR start "rule__VarDec__PrimitiveDecAssignment_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6880:1: rule__VarDec__PrimitiveDecAssignment_0 : ( rulePrimitiveDec ) ;
    public final void rule__VarDec__PrimitiveDecAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6884:1: ( ( rulePrimitiveDec ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6885:1: ( rulePrimitiveDec )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6885:1: ( rulePrimitiveDec )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6886:1: rulePrimitiveDec
            {
             before(grammarAccess.getVarDecAccess().getPrimitiveDecPrimitiveDecParserRuleCall_0_0()); 
            pushFollow(FOLLOW_rulePrimitiveDec_in_rule__VarDec__PrimitiveDecAssignment_014198);
            rulePrimitiveDec();

            state._fsp--;

             after(grammarAccess.getVarDecAccess().getPrimitiveDecPrimitiveDecParserRuleCall_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__VarDec__PrimitiveDecAssignment_0"


    // $ANTLR start "rule__VarDec__ArrayDecAssignment_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6895:1: rule__VarDec__ArrayDecAssignment_1 : ( ruleArrayDec ) ;
    public final void rule__VarDec__ArrayDecAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6899:1: ( ( ruleArrayDec ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6900:1: ( ruleArrayDec )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6900:1: ( ruleArrayDec )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6901:1: ruleArrayDec
            {
             before(grammarAccess.getVarDecAccess().getArrayDecArrayDecParserRuleCall_1_0()); 
            pushFollow(FOLLOW_ruleArrayDec_in_rule__VarDec__ArrayDecAssignment_114229);
            ruleArrayDec();

            state._fsp--;

             after(grammarAccess.getVarDecAccess().getArrayDecArrayDecParserRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__VarDec__ArrayDecAssignment_1"


    // $ANTLR start "rule__PrimitiveDec__IntDecAssignment_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6910:1: rule__PrimitiveDec__IntDecAssignment_0 : ( ruleIntDec ) ;
    public final void rule__PrimitiveDec__IntDecAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6914:1: ( ( ruleIntDec ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6915:1: ( ruleIntDec )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6915:1: ( ruleIntDec )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6916:1: ruleIntDec
            {
             before(grammarAccess.getPrimitiveDecAccess().getIntDecIntDecParserRuleCall_0_0()); 
            pushFollow(FOLLOW_ruleIntDec_in_rule__PrimitiveDec__IntDecAssignment_014260);
            ruleIntDec();

            state._fsp--;

             after(grammarAccess.getPrimitiveDecAccess().getIntDecIntDecParserRuleCall_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PrimitiveDec__IntDecAssignment_0"


    // $ANTLR start "rule__PrimitiveDec__RealDecAssignment_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6925:1: rule__PrimitiveDec__RealDecAssignment_1 : ( ruleRealDec ) ;
    public final void rule__PrimitiveDec__RealDecAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6929:1: ( ( ruleRealDec ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6930:1: ( ruleRealDec )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6930:1: ( ruleRealDec )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6931:1: ruleRealDec
            {
             before(grammarAccess.getPrimitiveDecAccess().getRealDecRealDecParserRuleCall_1_0()); 
            pushFollow(FOLLOW_ruleRealDec_in_rule__PrimitiveDec__RealDecAssignment_114291);
            ruleRealDec();

            state._fsp--;

             after(grammarAccess.getPrimitiveDecAccess().getRealDecRealDecParserRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PrimitiveDec__RealDecAssignment_1"


    // $ANTLR start "rule__PrimitiveDec__PartitionDecAssignment_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6940:1: rule__PrimitiveDec__PartitionDecAssignment_2 : ( rulePartitionDec ) ;
    public final void rule__PrimitiveDec__PartitionDecAssignment_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6944:1: ( ( rulePartitionDec ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6945:1: ( rulePartitionDec )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6945:1: ( rulePartitionDec )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6946:1: rulePartitionDec
            {
             before(grammarAccess.getPrimitiveDecAccess().getPartitionDecPartitionDecParserRuleCall_2_0()); 
            pushFollow(FOLLOW_rulePartitionDec_in_rule__PrimitiveDec__PartitionDecAssignment_214322);
            rulePartitionDec();

            state._fsp--;

             after(grammarAccess.getPrimitiveDecAccess().getPartitionDecPartitionDecParserRuleCall_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PrimitiveDec__PartitionDecAssignment_2"


    // $ANTLR start "rule__IntDec__TypeAssignment_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6955:1: rule__IntDec__TypeAssignment_0 : ( ( 'Int' ) ) ;
    public final void rule__IntDec__TypeAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6959:1: ( ( ( 'Int' ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6960:1: ( ( 'Int' ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6960:1: ( ( 'Int' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6961:1: ( 'Int' )
            {
             before(grammarAccess.getIntDecAccess().getTypeIntKeyword_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6962:1: ( 'Int' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6963:1: 'Int'
            {
             before(grammarAccess.getIntDecAccess().getTypeIntKeyword_0_0()); 
            match(input,11,FOLLOW_11_in_rule__IntDec__TypeAssignment_014358); 
             after(grammarAccess.getIntDecAccess().getTypeIntKeyword_0_0()); 

            }

             after(grammarAccess.getIntDecAccess().getTypeIntKeyword_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__IntDec__TypeAssignment_0"


    // $ANTLR start "rule__IntDec__VarsAssignment_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6978:1: rule__IntDec__VarsAssignment_1 : ( ruleSimpleVariable ) ;
    public final void rule__IntDec__VarsAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6982:1: ( ( ruleSimpleVariable ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6983:1: ( ruleSimpleVariable )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6983:1: ( ruleSimpleVariable )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6984:1: ruleSimpleVariable
            {
             before(grammarAccess.getIntDecAccess().getVarsSimpleVariableParserRuleCall_1_0()); 
            pushFollow(FOLLOW_ruleSimpleVariable_in_rule__IntDec__VarsAssignment_114397);
            ruleSimpleVariable();

            state._fsp--;

             after(grammarAccess.getIntDecAccess().getVarsSimpleVariableParserRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__IntDec__VarsAssignment_1"


    // $ANTLR start "rule__IntDec__VarsAssignment_2_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6993:1: rule__IntDec__VarsAssignment_2_1 : ( ruleSimpleVariable ) ;
    public final void rule__IntDec__VarsAssignment_2_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6997:1: ( ( ruleSimpleVariable ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6998:1: ( ruleSimpleVariable )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6998:1: ( ruleSimpleVariable )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:6999:1: ruleSimpleVariable
            {
             before(grammarAccess.getIntDecAccess().getVarsSimpleVariableParserRuleCall_2_1_0()); 
            pushFollow(FOLLOW_ruleSimpleVariable_in_rule__IntDec__VarsAssignment_2_114428);
            ruleSimpleVariable();

            state._fsp--;

             after(grammarAccess.getIntDecAccess().getVarsSimpleVariableParserRuleCall_2_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__IntDec__VarsAssignment_2_1"


    // $ANTLR start "rule__RealDec__TypeAssignment_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7008:1: rule__RealDec__TypeAssignment_0 : ( ( 'Real' ) ) ;
    public final void rule__RealDec__TypeAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7012:1: ( ( ( 'Real' ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7013:1: ( ( 'Real' ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7013:1: ( ( 'Real' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7014:1: ( 'Real' )
            {
             before(grammarAccess.getRealDecAccess().getTypeRealKeyword_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7015:1: ( 'Real' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7016:1: 'Real'
            {
             before(grammarAccess.getRealDecAccess().getTypeRealKeyword_0_0()); 
            match(input,12,FOLLOW_12_in_rule__RealDec__TypeAssignment_014464); 
             after(grammarAccess.getRealDecAccess().getTypeRealKeyword_0_0()); 

            }

             after(grammarAccess.getRealDecAccess().getTypeRealKeyword_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RealDec__TypeAssignment_0"


    // $ANTLR start "rule__RealDec__VarsAssignment_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7031:1: rule__RealDec__VarsAssignment_1 : ( ruleSimpleVariable ) ;
    public final void rule__RealDec__VarsAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7035:1: ( ( ruleSimpleVariable ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7036:1: ( ruleSimpleVariable )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7036:1: ( ruleSimpleVariable )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7037:1: ruleSimpleVariable
            {
             before(grammarAccess.getRealDecAccess().getVarsSimpleVariableParserRuleCall_1_0()); 
            pushFollow(FOLLOW_ruleSimpleVariable_in_rule__RealDec__VarsAssignment_114503);
            ruleSimpleVariable();

            state._fsp--;

             after(grammarAccess.getRealDecAccess().getVarsSimpleVariableParserRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RealDec__VarsAssignment_1"


    // $ANTLR start "rule__RealDec__VarsAssignment_2_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7046:1: rule__RealDec__VarsAssignment_2_1 : ( ruleSimpleVariable ) ;
    public final void rule__RealDec__VarsAssignment_2_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7050:1: ( ( ruleSimpleVariable ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7051:1: ( ruleSimpleVariable )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7051:1: ( ruleSimpleVariable )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7052:1: ruleSimpleVariable
            {
             before(grammarAccess.getRealDecAccess().getVarsSimpleVariableParserRuleCall_2_1_0()); 
            pushFollow(FOLLOW_ruleSimpleVariable_in_rule__RealDec__VarsAssignment_2_114534);
            ruleSimpleVariable();

            state._fsp--;

             after(grammarAccess.getRealDecAccess().getVarsSimpleVariableParserRuleCall_2_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__RealDec__VarsAssignment_2_1"


    // $ANTLR start "rule__PartitionDec__TypeAssignment_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7061:1: rule__PartitionDec__TypeAssignment_0 : ( ( 'Partition' ) ) ;
    public final void rule__PartitionDec__TypeAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7065:1: ( ( ( 'Partition' ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7066:1: ( ( 'Partition' ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7066:1: ( ( 'Partition' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7067:1: ( 'Partition' )
            {
             before(grammarAccess.getPartitionDecAccess().getTypePartitionKeyword_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7068:1: ( 'Partition' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7069:1: 'Partition'
            {
             before(grammarAccess.getPartitionDecAccess().getTypePartitionKeyword_0_0()); 
            match(input,13,FOLLOW_13_in_rule__PartitionDec__TypeAssignment_014570); 
             after(grammarAccess.getPartitionDecAccess().getTypePartitionKeyword_0_0()); 

            }

             after(grammarAccess.getPartitionDecAccess().getTypePartitionKeyword_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PartitionDec__TypeAssignment_0"


    // $ANTLR start "rule__PartitionDec__VarsAssignment_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7084:1: rule__PartitionDec__VarsAssignment_1 : ( ruleSimpleVariable ) ;
    public final void rule__PartitionDec__VarsAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7088:1: ( ( ruleSimpleVariable ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7089:1: ( ruleSimpleVariable )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7089:1: ( ruleSimpleVariable )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7090:1: ruleSimpleVariable
            {
             before(grammarAccess.getPartitionDecAccess().getVarsSimpleVariableParserRuleCall_1_0()); 
            pushFollow(FOLLOW_ruleSimpleVariable_in_rule__PartitionDec__VarsAssignment_114609);
            ruleSimpleVariable();

            state._fsp--;

             after(grammarAccess.getPartitionDecAccess().getVarsSimpleVariableParserRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PartitionDec__VarsAssignment_1"


    // $ANTLR start "rule__PartitionDec__VarsAssignment_2_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7099:1: rule__PartitionDec__VarsAssignment_2_1 : ( ruleSimpleVariable ) ;
    public final void rule__PartitionDec__VarsAssignment_2_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7103:1: ( ( ruleSimpleVariable ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7104:1: ( ruleSimpleVariable )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7104:1: ( ruleSimpleVariable )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7105:1: ruleSimpleVariable
            {
             before(grammarAccess.getPartitionDecAccess().getVarsSimpleVariableParserRuleCall_2_1_0()); 
            pushFollow(FOLLOW_ruleSimpleVariable_in_rule__PartitionDec__VarsAssignment_2_114640);
            ruleSimpleVariable();

            state._fsp--;

             after(grammarAccess.getPartitionDecAccess().getVarsSimpleVariableParserRuleCall_2_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__PartitionDec__VarsAssignment_2_1"


    // $ANTLR start "rule__ArrayDec__ArrayAssignment_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7114:1: rule__ArrayDec__ArrayAssignment_0 : ( ( 'array' ) ) ;
    public final void rule__ArrayDec__ArrayAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7118:1: ( ( ( 'array' ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7119:1: ( ( 'array' ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7119:1: ( ( 'array' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7120:1: ( 'array' )
            {
             before(grammarAccess.getArrayDecAccess().getArrayArrayKeyword_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7121:1: ( 'array' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7122:1: 'array'
            {
             before(grammarAccess.getArrayDecAccess().getArrayArrayKeyword_0_0()); 
            match(input,25,FOLLOW_25_in_rule__ArrayDec__ArrayAssignment_014676); 
             after(grammarAccess.getArrayDecAccess().getArrayArrayKeyword_0_0()); 

            }

             after(grammarAccess.getArrayDecAccess().getArrayArrayKeyword_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__ArrayAssignment_0"


    // $ANTLR start "rule__ArrayDec__ColumsAssignment_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7137:1: rule__ArrayDec__ColumsAssignment_2 : ( RULE_INT ) ;
    public final void rule__ArrayDec__ColumsAssignment_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7141:1: ( ( RULE_INT ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7142:1: ( RULE_INT )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7142:1: ( RULE_INT )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7143:1: RULE_INT
            {
             before(grammarAccess.getArrayDecAccess().getColumsINTTerminalRuleCall_2_0()); 
            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__ArrayDec__ColumsAssignment_214715); 
             after(grammarAccess.getArrayDecAccess().getColumsINTTerminalRuleCall_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__ColumsAssignment_2"


    // $ANTLR start "rule__ArrayDec__RowsAssignment_3_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7152:1: rule__ArrayDec__RowsAssignment_3_1 : ( RULE_INT ) ;
    public final void rule__ArrayDec__RowsAssignment_3_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7156:1: ( ( RULE_INT ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7157:1: ( RULE_INT )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7157:1: ( RULE_INT )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7158:1: RULE_INT
            {
             before(grammarAccess.getArrayDecAccess().getRowsINTTerminalRuleCall_3_1_0()); 
            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__ArrayDec__RowsAssignment_3_114746); 
             after(grammarAccess.getArrayDecAccess().getRowsINTTerminalRuleCall_3_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__RowsAssignment_3_1"


    // $ANTLR start "rule__ArrayDec__TypeAssignment_5"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7167:1: rule__ArrayDec__TypeAssignment_5 : ( ( rule__ArrayDec__TypeAlternatives_5_0 ) ) ;
    public final void rule__ArrayDec__TypeAssignment_5() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7171:1: ( ( ( rule__ArrayDec__TypeAlternatives_5_0 ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7172:1: ( ( rule__ArrayDec__TypeAlternatives_5_0 ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7172:1: ( ( rule__ArrayDec__TypeAlternatives_5_0 ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7173:1: ( rule__ArrayDec__TypeAlternatives_5_0 )
            {
             before(grammarAccess.getArrayDecAccess().getTypeAlternatives_5_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7174:1: ( rule__ArrayDec__TypeAlternatives_5_0 )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7174:2: rule__ArrayDec__TypeAlternatives_5_0
            {
            pushFollow(FOLLOW_rule__ArrayDec__TypeAlternatives_5_0_in_rule__ArrayDec__TypeAssignment_514777);
            rule__ArrayDec__TypeAlternatives_5_0();

            state._fsp--;


            }

             after(grammarAccess.getArrayDecAccess().getTypeAlternatives_5_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__TypeAssignment_5"


    // $ANTLR start "rule__ArrayDec__ArrayVarsAssignment_6"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7183:1: rule__ArrayDec__ArrayVarsAssignment_6 : ( ruleArray ) ;
    public final void rule__ArrayDec__ArrayVarsAssignment_6() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7187:1: ( ( ruleArray ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7188:1: ( ruleArray )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7188:1: ( ruleArray )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7189:1: ruleArray
            {
             before(grammarAccess.getArrayDecAccess().getArrayVarsArrayParserRuleCall_6_0()); 
            pushFollow(FOLLOW_ruleArray_in_rule__ArrayDec__ArrayVarsAssignment_614810);
            ruleArray();

            state._fsp--;

             after(grammarAccess.getArrayDecAccess().getArrayVarsArrayParserRuleCall_6_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__ArrayVarsAssignment_6"


    // $ANTLR start "rule__ArrayDec__ArrayVarsAssignment_7_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7198:1: rule__ArrayDec__ArrayVarsAssignment_7_1 : ( ruleArray ) ;
    public final void rule__ArrayDec__ArrayVarsAssignment_7_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7202:1: ( ( ruleArray ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7203:1: ( ruleArray )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7203:1: ( ruleArray )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7204:1: ruleArray
            {
             before(grammarAccess.getArrayDecAccess().getArrayVarsArrayParserRuleCall_7_1_0()); 
            pushFollow(FOLLOW_ruleArray_in_rule__ArrayDec__ArrayVarsAssignment_7_114841);
            ruleArray();

            state._fsp--;

             after(grammarAccess.getArrayDecAccess().getArrayVarsArrayParserRuleCall_7_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayDec__ArrayVarsAssignment_7_1"


    // $ANTLR start "rule__Assignment__DecAssignment_0_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7213:1: rule__Assignment__DecAssignment_0_0 : ( ruleVarDec ) ;
    public final void rule__Assignment__DecAssignment_0_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7217:1: ( ( ruleVarDec ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7218:1: ( ruleVarDec )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7218:1: ( ruleVarDec )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7219:1: ruleVarDec
            {
             before(grammarAccess.getAssignmentAccess().getDecVarDecParserRuleCall_0_0_0()); 
            pushFollow(FOLLOW_ruleVarDec_in_rule__Assignment__DecAssignment_0_014872);
            ruleVarDec();

            state._fsp--;

             after(grammarAccess.getAssignmentAccess().getDecVarDecParserRuleCall_0_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Assignment__DecAssignment_0_0"


    // $ANTLR start "rule__Assignment__VariablesAssignment_0_1_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7228:1: rule__Assignment__VariablesAssignment_0_1_0 : ( ( RULE_ID ) ) ;
    public final void rule__Assignment__VariablesAssignment_0_1_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7232:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7233:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7233:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7234:1: ( RULE_ID )
            {
             before(grammarAccess.getAssignmentAccess().getVariablesVariableCrossReference_0_1_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7235:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7236:1: RULE_ID
            {
             before(grammarAccess.getAssignmentAccess().getVariablesVariableIDTerminalRuleCall_0_1_0_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Assignment__VariablesAssignment_0_1_014907); 
             after(grammarAccess.getAssignmentAccess().getVariablesVariableIDTerminalRuleCall_0_1_0_0_1()); 

            }

             after(grammarAccess.getAssignmentAccess().getVariablesVariableCrossReference_0_1_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Assignment__VariablesAssignment_0_1_0"


    // $ANTLR start "rule__Assignment__VariablesAssignment_0_1_1_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7247:1: rule__Assignment__VariablesAssignment_0_1_1_1 : ( ( RULE_ID ) ) ;
    public final void rule__Assignment__VariablesAssignment_0_1_1_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7251:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7252:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7252:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7253:1: ( RULE_ID )
            {
             before(grammarAccess.getAssignmentAccess().getVariablesVariableCrossReference_0_1_1_1_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7254:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7255:1: RULE_ID
            {
             before(grammarAccess.getAssignmentAccess().getVariablesVariableIDTerminalRuleCall_0_1_1_1_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Assignment__VariablesAssignment_0_1_1_114946); 
             after(grammarAccess.getAssignmentAccess().getVariablesVariableIDTerminalRuleCall_0_1_1_1_0_1()); 

            }

             after(grammarAccess.getAssignmentAccess().getVariablesVariableCrossReference_0_1_1_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Assignment__VariablesAssignment_0_1_1_1"


    // $ANTLR start "rule__Assignment__ArrayElementAssignment_0_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7266:1: rule__Assignment__ArrayElementAssignment_0_2 : ( ruleArrayElement ) ;
    public final void rule__Assignment__ArrayElementAssignment_0_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7270:1: ( ( ruleArrayElement ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7271:1: ( ruleArrayElement )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7271:1: ( ruleArrayElement )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7272:1: ruleArrayElement
            {
             before(grammarAccess.getAssignmentAccess().getArrayElementArrayElementParserRuleCall_0_2_0()); 
            pushFollow(FOLLOW_ruleArrayElement_in_rule__Assignment__ArrayElementAssignment_0_214981);
            ruleArrayElement();

            state._fsp--;

             after(grammarAccess.getAssignmentAccess().getArrayElementArrayElementParserRuleCall_0_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Assignment__ArrayElementAssignment_0_2"


    // $ANTLR start "rule__Assignment__CalcCRAssignment_2_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7281:1: rule__Assignment__CalcCRAssignment_2_0 : ( ruleCalcCR ) ;
    public final void rule__Assignment__CalcCRAssignment_2_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7285:1: ( ( ruleCalcCR ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7286:1: ( ruleCalcCR )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7286:1: ( ruleCalcCR )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7287:1: ruleCalcCR
            {
             before(grammarAccess.getAssignmentAccess().getCalcCRCalcCRParserRuleCall_2_0_0()); 
            pushFollow(FOLLOW_ruleCalcCR_in_rule__Assignment__CalcCRAssignment_2_015012);
            ruleCalcCR();

            state._fsp--;

             after(grammarAccess.getAssignmentAccess().getCalcCRCalcCRParserRuleCall_2_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Assignment__CalcCRAssignment_2_0"


    // $ANTLR start "rule__Assignment__CalcMeanAssignment_2_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7296:1: rule__Assignment__CalcMeanAssignment_2_1 : ( ruleCalcMean ) ;
    public final void rule__Assignment__CalcMeanAssignment_2_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7300:1: ( ( ruleCalcMean ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7301:1: ( ruleCalcMean )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7301:1: ( ruleCalcMean )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7302:1: ruleCalcMean
            {
             before(grammarAccess.getAssignmentAccess().getCalcMeanCalcMeanParserRuleCall_2_1_0()); 
            pushFollow(FOLLOW_ruleCalcMean_in_rule__Assignment__CalcMeanAssignment_2_115043);
            ruleCalcMean();

            state._fsp--;

             after(grammarAccess.getAssignmentAccess().getCalcMeanCalcMeanParserRuleCall_2_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Assignment__CalcMeanAssignment_2_1"


    // $ANTLR start "rule__Assignment__NumberAssignment_2_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7311:1: rule__Assignment__NumberAssignment_2_2 : ( ruleNumber ) ;
    public final void rule__Assignment__NumberAssignment_2_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7315:1: ( ( ruleNumber ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7316:1: ( ruleNumber )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7316:1: ( ruleNumber )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7317:1: ruleNumber
            {
             before(grammarAccess.getAssignmentAccess().getNumberNumberParserRuleCall_2_2_0()); 
            pushFollow(FOLLOW_ruleNumber_in_rule__Assignment__NumberAssignment_2_215074);
            ruleNumber();

            state._fsp--;

             after(grammarAccess.getAssignmentAccess().getNumberNumberParserRuleCall_2_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Assignment__NumberAssignment_2_2"


    // $ANTLR start "rule__Assignment__ArchiveAssignment_2_3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7326:1: rule__Assignment__ArchiveAssignment_2_3 : ( ruleArchive ) ;
    public final void rule__Assignment__ArchiveAssignment_2_3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7330:1: ( ( ruleArchive ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7331:1: ( ruleArchive )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7331:1: ( ruleArchive )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7332:1: ruleArchive
            {
             before(grammarAccess.getAssignmentAccess().getArchiveArchiveParserRuleCall_2_3_0()); 
            pushFollow(FOLLOW_ruleArchive_in_rule__Assignment__ArchiveAssignment_2_315105);
            ruleArchive();

            state._fsp--;

             after(grammarAccess.getAssignmentAccess().getArchiveArchiveParserRuleCall_2_3_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Assignment__ArchiveAssignment_2_3"


    // $ANTLR start "rule__Assignment__VariableAssignment_2_4"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7341:1: rule__Assignment__VariableAssignment_2_4 : ( ( RULE_ID ) ) ;
    public final void rule__Assignment__VariableAssignment_2_4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7345:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7346:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7346:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7347:1: ( RULE_ID )
            {
             before(grammarAccess.getAssignmentAccess().getVariableVariableCrossReference_2_4_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7348:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7349:1: RULE_ID
            {
             before(grammarAccess.getAssignmentAccess().getVariableVariableIDTerminalRuleCall_2_4_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Assignment__VariableAssignment_2_415140); 
             after(grammarAccess.getAssignmentAccess().getVariableVariableIDTerminalRuleCall_2_4_0_1()); 

            }

             after(grammarAccess.getAssignmentAccess().getVariableVariableCrossReference_2_4_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Assignment__VariableAssignment_2_4"


    // $ANTLR start "rule__Assignment__AssignedAEAssignment_2_5"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7360:1: rule__Assignment__AssignedAEAssignment_2_5 : ( ruleArrayElement ) ;
    public final void rule__Assignment__AssignedAEAssignment_2_5() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7364:1: ( ( ruleArrayElement ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7365:1: ( ruleArrayElement )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7365:1: ( ruleArrayElement )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7366:1: ruleArrayElement
            {
             before(grammarAccess.getAssignmentAccess().getAssignedAEArrayElementParserRuleCall_2_5_0()); 
            pushFollow(FOLLOW_ruleArrayElement_in_rule__Assignment__AssignedAEAssignment_2_515175);
            ruleArrayElement();

            state._fsp--;

             after(grammarAccess.getAssignmentAccess().getAssignedAEArrayElementParserRuleCall_2_5_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Assignment__AssignedAEAssignment_2_5"


    // $ANTLR start "rule__ArrayMethod__SizeAssignment_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7375:1: rule__ArrayMethod__SizeAssignment_0 : ( ruleSize ) ;
    public final void rule__ArrayMethod__SizeAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7379:1: ( ( ruleSize ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7380:1: ( ruleSize )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7380:1: ( ruleSize )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7381:1: ruleSize
            {
             before(grammarAccess.getArrayMethodAccess().getSizeSizeParserRuleCall_0_0()); 
            pushFollow(FOLLOW_ruleSize_in_rule__ArrayMethod__SizeAssignment_015206);
            ruleSize();

            state._fsp--;

             after(grammarAccess.getArrayMethodAccess().getSizeSizeParserRuleCall_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayMethod__SizeAssignment_0"


    // $ANTLR start "rule__ArrayMethod__AddAssignment_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7390:1: rule__ArrayMethod__AddAssignment_1 : ( ruleAdd ) ;
    public final void rule__ArrayMethod__AddAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7394:1: ( ( ruleAdd ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7395:1: ( ruleAdd )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7395:1: ( ruleAdd )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7396:1: ruleAdd
            {
             before(grammarAccess.getArrayMethodAccess().getAddAddParserRuleCall_1_0()); 
            pushFollow(FOLLOW_ruleAdd_in_rule__ArrayMethod__AddAssignment_115237);
            ruleAdd();

            state._fsp--;

             after(grammarAccess.getArrayMethodAccess().getAddAddParserRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayMethod__AddAssignment_1"


    // $ANTLR start "rule__ArrayMethod__DeleteAssignment_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7405:1: rule__ArrayMethod__DeleteAssignment_2 : ( ruleDelete ) ;
    public final void rule__ArrayMethod__DeleteAssignment_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7409:1: ( ( ruleDelete ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7410:1: ( ruleDelete )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7410:1: ( ruleDelete )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7411:1: ruleDelete
            {
             before(grammarAccess.getArrayMethodAccess().getDeleteDeleteParserRuleCall_2_0()); 
            pushFollow(FOLLOW_ruleDelete_in_rule__ArrayMethod__DeleteAssignment_215268);
            ruleDelete();

            state._fsp--;

             after(grammarAccess.getArrayMethodAccess().getDeleteDeleteParserRuleCall_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayMethod__DeleteAssignment_2"


    // $ANTLR start "rule__Size__ArrayAssignment_0_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7420:1: rule__Size__ArrayAssignment_0_0 : ( ( RULE_ID ) ) ;
    public final void rule__Size__ArrayAssignment_0_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7424:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7425:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7425:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7426:1: ( RULE_ID )
            {
             before(grammarAccess.getSizeAccess().getArrayArrayCrossReference_0_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7427:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7428:1: RULE_ID
            {
             before(grammarAccess.getSizeAccess().getArrayArrayIDTerminalRuleCall_0_0_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Size__ArrayAssignment_0_015303); 
             after(grammarAccess.getSizeAccess().getArrayArrayIDTerminalRuleCall_0_0_0_1()); 

            }

             after(grammarAccess.getSizeAccess().getArrayArrayCrossReference_0_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Size__ArrayAssignment_0_0"


    // $ANTLR start "rule__Size__ArrayElementAssignment_0_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7439:1: rule__Size__ArrayElementAssignment_0_1 : ( ruleArrayElement ) ;
    public final void rule__Size__ArrayElementAssignment_0_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7443:1: ( ( ruleArrayElement ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7444:1: ( ruleArrayElement )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7444:1: ( ruleArrayElement )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7445:1: ruleArrayElement
            {
             before(grammarAccess.getSizeAccess().getArrayElementArrayElementParserRuleCall_0_1_0()); 
            pushFollow(FOLLOW_ruleArrayElement_in_rule__Size__ArrayElementAssignment_0_115338);
            ruleArrayElement();

            state._fsp--;

             after(grammarAccess.getSizeAccess().getArrayElementArrayElementParserRuleCall_0_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Size__ArrayElementAssignment_0_1"


    // $ANTLR start "rule__Size__MethodAssignment_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7454:1: rule__Size__MethodAssignment_2 : ( ( 'size' ) ) ;
    public final void rule__Size__MethodAssignment_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7458:1: ( ( ( 'size' ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7459:1: ( ( 'size' ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7459:1: ( ( 'size' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7460:1: ( 'size' )
            {
             before(grammarAccess.getSizeAccess().getMethodSizeKeyword_2_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7461:1: ( 'size' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7462:1: 'size'
            {
             before(grammarAccess.getSizeAccess().getMethodSizeKeyword_2_0()); 
            match(input,26,FOLLOW_26_in_rule__Size__MethodAssignment_215374); 
             after(grammarAccess.getSizeAccess().getMethodSizeKeyword_2_0()); 

            }

             after(grammarAccess.getSizeAccess().getMethodSizeKeyword_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Size__MethodAssignment_2"


    // $ANTLR start "rule__Add__ArrayAssignment_0_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7477:1: rule__Add__ArrayAssignment_0_0 : ( ( RULE_ID ) ) ;
    public final void rule__Add__ArrayAssignment_0_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7481:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7482:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7482:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7483:1: ( RULE_ID )
            {
             before(grammarAccess.getAddAccess().getArrayArrayCrossReference_0_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7484:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7485:1: RULE_ID
            {
             before(grammarAccess.getAddAccess().getArrayArrayIDTerminalRuleCall_0_0_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Add__ArrayAssignment_0_015417); 
             after(grammarAccess.getAddAccess().getArrayArrayIDTerminalRuleCall_0_0_0_1()); 

            }

             after(grammarAccess.getAddAccess().getArrayArrayCrossReference_0_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__ArrayAssignment_0_0"


    // $ANTLR start "rule__Add__ArrayElementAssignment_0_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7496:1: rule__Add__ArrayElementAssignment_0_1 : ( ruleArrayElement ) ;
    public final void rule__Add__ArrayElementAssignment_0_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7500:1: ( ( ruleArrayElement ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7501:1: ( ruleArrayElement )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7501:1: ( ruleArrayElement )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7502:1: ruleArrayElement
            {
             before(grammarAccess.getAddAccess().getArrayElementArrayElementParserRuleCall_0_1_0()); 
            pushFollow(FOLLOW_ruleArrayElement_in_rule__Add__ArrayElementAssignment_0_115452);
            ruleArrayElement();

            state._fsp--;

             after(grammarAccess.getAddAccess().getArrayElementArrayElementParserRuleCall_0_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__ArrayElementAssignment_0_1"


    // $ANTLR start "rule__Add__MethodAssignment_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7511:1: rule__Add__MethodAssignment_2 : ( ( 'add' ) ) ;
    public final void rule__Add__MethodAssignment_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7515:1: ( ( ( 'add' ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7516:1: ( ( 'add' ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7516:1: ( ( 'add' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7517:1: ( 'add' )
            {
             before(grammarAccess.getAddAccess().getMethodAddKeyword_2_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7518:1: ( 'add' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7519:1: 'add'
            {
             before(grammarAccess.getAddAccess().getMethodAddKeyword_2_0()); 
            match(input,27,FOLLOW_27_in_rule__Add__MethodAssignment_215488); 
             after(grammarAccess.getAddAccess().getMethodAddKeyword_2_0()); 

            }

             after(grammarAccess.getAddAccess().getMethodAddKeyword_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__MethodAssignment_2"


    // $ANTLR start "rule__Add__NumParamsAssignment_4_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7534:1: rule__Add__NumParamsAssignment_4_0 : ( ruleNumber ) ;
    public final void rule__Add__NumParamsAssignment_4_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7538:1: ( ( ruleNumber ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7539:1: ( ruleNumber )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7539:1: ( ruleNumber )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7540:1: ruleNumber
            {
             before(grammarAccess.getAddAccess().getNumParamsNumberParserRuleCall_4_0_0()); 
            pushFollow(FOLLOW_ruleNumber_in_rule__Add__NumParamsAssignment_4_015527);
            ruleNumber();

            state._fsp--;

             after(grammarAccess.getAddAccess().getNumParamsNumberParserRuleCall_4_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__NumParamsAssignment_4_0"


    // $ANTLR start "rule__Add__VarParamsAssignment_4_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7549:1: rule__Add__VarParamsAssignment_4_1 : ( ( RULE_ID ) ) ;
    public final void rule__Add__VarParamsAssignment_4_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7553:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7554:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7554:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7555:1: ( RULE_ID )
            {
             before(grammarAccess.getAddAccess().getVarParamsVariableCrossReference_4_1_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7556:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7557:1: RULE_ID
            {
             before(grammarAccess.getAddAccess().getVarParamsVariableIDTerminalRuleCall_4_1_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Add__VarParamsAssignment_4_115562); 
             after(grammarAccess.getAddAccess().getVarParamsVariableIDTerminalRuleCall_4_1_0_1()); 

            }

             after(grammarAccess.getAddAccess().getVarParamsVariableCrossReference_4_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__VarParamsAssignment_4_1"


    // $ANTLR start "rule__Add__AeParamsAssignment_4_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7568:1: rule__Add__AeParamsAssignment_4_2 : ( ruleArrayElement ) ;
    public final void rule__Add__AeParamsAssignment_4_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7572:1: ( ( ruleArrayElement ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7573:1: ( ruleArrayElement )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7573:1: ( ruleArrayElement )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7574:1: ruleArrayElement
            {
             before(grammarAccess.getAddAccess().getAeParamsArrayElementParserRuleCall_4_2_0()); 
            pushFollow(FOLLOW_ruleArrayElement_in_rule__Add__AeParamsAssignment_4_215597);
            ruleArrayElement();

            state._fsp--;

             after(grammarAccess.getAddAccess().getAeParamsArrayElementParserRuleCall_4_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__AeParamsAssignment_4_2"


    // $ANTLR start "rule__Add__ArchiveAssignment_4_3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7583:1: rule__Add__ArchiveAssignment_4_3 : ( ruleArchive ) ;
    public final void rule__Add__ArchiveAssignment_4_3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7587:1: ( ( ruleArchive ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7588:1: ( ruleArchive )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7588:1: ( ruleArchive )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7589:1: ruleArchive
            {
             before(grammarAccess.getAddAccess().getArchiveArchiveParserRuleCall_4_3_0()); 
            pushFollow(FOLLOW_ruleArchive_in_rule__Add__ArchiveAssignment_4_315628);
            ruleArchive();

            state._fsp--;

             after(grammarAccess.getAddAccess().getArchiveArchiveParserRuleCall_4_3_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__ArchiveAssignment_4_3"


    // $ANTLR start "rule__Add__SizesAssignment_4_4"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7598:1: rule__Add__SizesAssignment_4_4 : ( ruleSize ) ;
    public final void rule__Add__SizesAssignment_4_4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7602:1: ( ( ruleSize ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7603:1: ( ruleSize )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7603:1: ( ruleSize )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7604:1: ruleSize
            {
             before(grammarAccess.getAddAccess().getSizesSizeParserRuleCall_4_4_0()); 
            pushFollow(FOLLOW_ruleSize_in_rule__Add__SizesAssignment_4_415659);
            ruleSize();

            state._fsp--;

             after(grammarAccess.getAddAccess().getSizesSizeParserRuleCall_4_4_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__SizesAssignment_4_4"


    // $ANTLR start "rule__Add__CalcCRsAssignment_4_5"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7613:1: rule__Add__CalcCRsAssignment_4_5 : ( ruleCalcCR ) ;
    public final void rule__Add__CalcCRsAssignment_4_5() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7617:1: ( ( ruleCalcCR ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7618:1: ( ruleCalcCR )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7618:1: ( ruleCalcCR )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7619:1: ruleCalcCR
            {
             before(grammarAccess.getAddAccess().getCalcCRsCalcCRParserRuleCall_4_5_0()); 
            pushFollow(FOLLOW_ruleCalcCR_in_rule__Add__CalcCRsAssignment_4_515690);
            ruleCalcCR();

            state._fsp--;

             after(grammarAccess.getAddAccess().getCalcCRsCalcCRParserRuleCall_4_5_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__CalcCRsAssignment_4_5"


    // $ANTLR start "rule__Add__CalcMeansAssignment_4_6"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7628:1: rule__Add__CalcMeansAssignment_4_6 : ( ruleCalcMean ) ;
    public final void rule__Add__CalcMeansAssignment_4_6() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7632:1: ( ( ruleCalcMean ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7633:1: ( ruleCalcMean )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7633:1: ( ruleCalcMean )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7634:1: ruleCalcMean
            {
             before(grammarAccess.getAddAccess().getCalcMeansCalcMeanParserRuleCall_4_6_0()); 
            pushFollow(FOLLOW_ruleCalcMean_in_rule__Add__CalcMeansAssignment_4_615721);
            ruleCalcMean();

            state._fsp--;

             after(grammarAccess.getAddAccess().getCalcMeansCalcMeanParserRuleCall_4_6_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__CalcMeansAssignment_4_6"


    // $ANTLR start "rule__Add__NumParamsAssignment_5_1_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7643:1: rule__Add__NumParamsAssignment_5_1_0 : ( ruleNumber ) ;
    public final void rule__Add__NumParamsAssignment_5_1_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7647:1: ( ( ruleNumber ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7648:1: ( ruleNumber )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7648:1: ( ruleNumber )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7649:1: ruleNumber
            {
             before(grammarAccess.getAddAccess().getNumParamsNumberParserRuleCall_5_1_0_0()); 
            pushFollow(FOLLOW_ruleNumber_in_rule__Add__NumParamsAssignment_5_1_015752);
            ruleNumber();

            state._fsp--;

             after(grammarAccess.getAddAccess().getNumParamsNumberParserRuleCall_5_1_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__NumParamsAssignment_5_1_0"


    // $ANTLR start "rule__Add__VarParamsAssignment_5_1_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7658:1: rule__Add__VarParamsAssignment_5_1_1 : ( ( RULE_ID ) ) ;
    public final void rule__Add__VarParamsAssignment_5_1_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7662:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7663:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7663:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7664:1: ( RULE_ID )
            {
             before(grammarAccess.getAddAccess().getVarParamsVariableCrossReference_5_1_1_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7665:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7666:1: RULE_ID
            {
             before(grammarAccess.getAddAccess().getVarParamsVariableIDTerminalRuleCall_5_1_1_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Add__VarParamsAssignment_5_1_115787); 
             after(grammarAccess.getAddAccess().getVarParamsVariableIDTerminalRuleCall_5_1_1_0_1()); 

            }

             after(grammarAccess.getAddAccess().getVarParamsVariableCrossReference_5_1_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__VarParamsAssignment_5_1_1"


    // $ANTLR start "rule__Add__AeParamsAssignment_5_1_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7677:1: rule__Add__AeParamsAssignment_5_1_2 : ( ruleArrayElement ) ;
    public final void rule__Add__AeParamsAssignment_5_1_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7681:1: ( ( ruleArrayElement ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7682:1: ( ruleArrayElement )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7682:1: ( ruleArrayElement )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7683:1: ruleArrayElement
            {
             before(grammarAccess.getAddAccess().getAeParamsArrayElementParserRuleCall_5_1_2_0()); 
            pushFollow(FOLLOW_ruleArrayElement_in_rule__Add__AeParamsAssignment_5_1_215822);
            ruleArrayElement();

            state._fsp--;

             after(grammarAccess.getAddAccess().getAeParamsArrayElementParserRuleCall_5_1_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__AeParamsAssignment_5_1_2"


    // $ANTLR start "rule__Add__ArchiveAssignment_5_1_3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7692:1: rule__Add__ArchiveAssignment_5_1_3 : ( ruleArchive ) ;
    public final void rule__Add__ArchiveAssignment_5_1_3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7696:1: ( ( ruleArchive ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7697:1: ( ruleArchive )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7697:1: ( ruleArchive )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7698:1: ruleArchive
            {
             before(grammarAccess.getAddAccess().getArchiveArchiveParserRuleCall_5_1_3_0()); 
            pushFollow(FOLLOW_ruleArchive_in_rule__Add__ArchiveAssignment_5_1_315853);
            ruleArchive();

            state._fsp--;

             after(grammarAccess.getAddAccess().getArchiveArchiveParserRuleCall_5_1_3_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__ArchiveAssignment_5_1_3"


    // $ANTLR start "rule__Add__SizesAssignment_5_1_4"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7707:1: rule__Add__SizesAssignment_5_1_4 : ( ruleSize ) ;
    public final void rule__Add__SizesAssignment_5_1_4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7711:1: ( ( ruleSize ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7712:1: ( ruleSize )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7712:1: ( ruleSize )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7713:1: ruleSize
            {
             before(grammarAccess.getAddAccess().getSizesSizeParserRuleCall_5_1_4_0()); 
            pushFollow(FOLLOW_ruleSize_in_rule__Add__SizesAssignment_5_1_415884);
            ruleSize();

            state._fsp--;

             after(grammarAccess.getAddAccess().getSizesSizeParserRuleCall_5_1_4_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__SizesAssignment_5_1_4"


    // $ANTLR start "rule__Add__CalcCRsAssignment_5_1_5"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7722:1: rule__Add__CalcCRsAssignment_5_1_5 : ( ruleCalcCR ) ;
    public final void rule__Add__CalcCRsAssignment_5_1_5() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7726:1: ( ( ruleCalcCR ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7727:1: ( ruleCalcCR )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7727:1: ( ruleCalcCR )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7728:1: ruleCalcCR
            {
             before(grammarAccess.getAddAccess().getCalcCRsCalcCRParserRuleCall_5_1_5_0()); 
            pushFollow(FOLLOW_ruleCalcCR_in_rule__Add__CalcCRsAssignment_5_1_515915);
            ruleCalcCR();

            state._fsp--;

             after(grammarAccess.getAddAccess().getCalcCRsCalcCRParserRuleCall_5_1_5_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__CalcCRsAssignment_5_1_5"


    // $ANTLR start "rule__Add__CalcMeansAssignment_5_1_6"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7737:1: rule__Add__CalcMeansAssignment_5_1_6 : ( ruleCalcMean ) ;
    public final void rule__Add__CalcMeansAssignment_5_1_6() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7741:1: ( ( ruleCalcMean ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7742:1: ( ruleCalcMean )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7742:1: ( ruleCalcMean )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7743:1: ruleCalcMean
            {
             before(grammarAccess.getAddAccess().getCalcMeansCalcMeanParserRuleCall_5_1_6_0()); 
            pushFollow(FOLLOW_ruleCalcMean_in_rule__Add__CalcMeansAssignment_5_1_615946);
            ruleCalcMean();

            state._fsp--;

             after(grammarAccess.getAddAccess().getCalcMeansCalcMeanParserRuleCall_5_1_6_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Add__CalcMeansAssignment_5_1_6"


    // $ANTLR start "rule__Delete__ArrayAssignment_0_0_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7752:1: rule__Delete__ArrayAssignment_0_0_0 : ( ( RULE_ID ) ) ;
    public final void rule__Delete__ArrayAssignment_0_0_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7756:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7757:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7757:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7758:1: ( RULE_ID )
            {
             before(grammarAccess.getDeleteAccess().getArrayArrayCrossReference_0_0_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7759:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7760:1: RULE_ID
            {
             before(grammarAccess.getDeleteAccess().getArrayArrayIDTerminalRuleCall_0_0_0_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Delete__ArrayAssignment_0_0_015981); 
             after(grammarAccess.getDeleteAccess().getArrayArrayIDTerminalRuleCall_0_0_0_0_1()); 

            }

             after(grammarAccess.getDeleteAccess().getArrayArrayCrossReference_0_0_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__ArrayAssignment_0_0_0"


    // $ANTLR start "rule__Delete__ArrayElementAssignment_0_0_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7771:1: rule__Delete__ArrayElementAssignment_0_0_1 : ( ruleArrayElement ) ;
    public final void rule__Delete__ArrayElementAssignment_0_0_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7775:1: ( ( ruleArrayElement ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7776:1: ( ruleArrayElement )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7776:1: ( ruleArrayElement )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7777:1: ruleArrayElement
            {
             before(grammarAccess.getDeleteAccess().getArrayElementArrayElementParserRuleCall_0_0_1_0()); 
            pushFollow(FOLLOW_ruleArrayElement_in_rule__Delete__ArrayElementAssignment_0_0_116016);
            ruleArrayElement();

            state._fsp--;

             after(grammarAccess.getDeleteAccess().getArrayElementArrayElementParserRuleCall_0_0_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__ArrayElementAssignment_0_0_1"


    // $ANTLR start "rule__Delete__MethodAssignment_0_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7786:1: rule__Delete__MethodAssignment_0_2 : ( ( 'delete' ) ) ;
    public final void rule__Delete__MethodAssignment_0_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7790:1: ( ( ( 'delete' ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7791:1: ( ( 'delete' ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7791:1: ( ( 'delete' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7792:1: ( 'delete' )
            {
             before(grammarAccess.getDeleteAccess().getMethodDeleteKeyword_0_2_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7793:1: ( 'delete' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7794:1: 'delete'
            {
             before(grammarAccess.getDeleteAccess().getMethodDeleteKeyword_0_2_0()); 
            match(input,28,FOLLOW_28_in_rule__Delete__MethodAssignment_0_216052); 
             after(grammarAccess.getDeleteAccess().getMethodDeleteKeyword_0_2_0()); 

            }

             after(grammarAccess.getDeleteAccess().getMethodDeleteKeyword_0_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__MethodAssignment_0_2"


    // $ANTLR start "rule__Delete__DelElementsAssignment_0_4_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7809:1: rule__Delete__DelElementsAssignment_0_4_0 : ( RULE_INT ) ;
    public final void rule__Delete__DelElementsAssignment_0_4_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7813:1: ( ( RULE_INT ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7814:1: ( RULE_INT )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7814:1: ( RULE_INT )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7815:1: RULE_INT
            {
             before(grammarAccess.getDeleteAccess().getDelElementsINTTerminalRuleCall_0_4_0_0()); 
            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__Delete__DelElementsAssignment_0_4_016091); 
             after(grammarAccess.getDeleteAccess().getDelElementsINTTerminalRuleCall_0_4_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__DelElementsAssignment_0_4_0"


    // $ANTLR start "rule__Delete__DelVarsAssignment_0_4_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7824:1: rule__Delete__DelVarsAssignment_0_4_1 : ( ( RULE_ID ) ) ;
    public final void rule__Delete__DelVarsAssignment_0_4_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7828:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7829:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7829:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7830:1: ( RULE_ID )
            {
             before(grammarAccess.getDeleteAccess().getDelVarsSimpleVariableCrossReference_0_4_1_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7831:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7832:1: RULE_ID
            {
             before(grammarAccess.getDeleteAccess().getDelVarsSimpleVariableIDTerminalRuleCall_0_4_1_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Delete__DelVarsAssignment_0_4_116126); 
             after(grammarAccess.getDeleteAccess().getDelVarsSimpleVariableIDTerminalRuleCall_0_4_1_0_1()); 

            }

             after(grammarAccess.getDeleteAccess().getDelVarsSimpleVariableCrossReference_0_4_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__DelVarsAssignment_0_4_1"


    // $ANTLR start "rule__Delete__DelArraysAssignment_0_4_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7843:1: rule__Delete__DelArraysAssignment_0_4_2 : ( ruleArrayElement ) ;
    public final void rule__Delete__DelArraysAssignment_0_4_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7847:1: ( ( ruleArrayElement ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7848:1: ( ruleArrayElement )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7848:1: ( ruleArrayElement )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7849:1: ruleArrayElement
            {
             before(grammarAccess.getDeleteAccess().getDelArraysArrayElementParserRuleCall_0_4_2_0()); 
            pushFollow(FOLLOW_ruleArrayElement_in_rule__Delete__DelArraysAssignment_0_4_216161);
            ruleArrayElement();

            state._fsp--;

             after(grammarAccess.getDeleteAccess().getDelArraysArrayElementParserRuleCall_0_4_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__DelArraysAssignment_0_4_2"


    // $ANTLR start "rule__Delete__SizeAssignment_0_4_3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7858:1: rule__Delete__SizeAssignment_0_4_3 : ( ruleSize ) ;
    public final void rule__Delete__SizeAssignment_0_4_3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7862:1: ( ( ruleSize ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7863:1: ( ruleSize )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7863:1: ( ruleSize )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7864:1: ruleSize
            {
             before(grammarAccess.getDeleteAccess().getSizeSizeParserRuleCall_0_4_3_0()); 
            pushFollow(FOLLOW_ruleSize_in_rule__Delete__SizeAssignment_0_4_316192);
            ruleSize();

            state._fsp--;

             after(grammarAccess.getDeleteAccess().getSizeSizeParserRuleCall_0_4_3_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__SizeAssignment_0_4_3"


    // $ANTLR start "rule__Delete__DelElementsAssignment_0_5_0_1_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7873:1: rule__Delete__DelElementsAssignment_0_5_0_1_0 : ( RULE_INT ) ;
    public final void rule__Delete__DelElementsAssignment_0_5_0_1_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7877:1: ( ( RULE_INT ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7878:1: ( RULE_INT )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7878:1: ( RULE_INT )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7879:1: RULE_INT
            {
             before(grammarAccess.getDeleteAccess().getDelElementsINTTerminalRuleCall_0_5_0_1_0_0()); 
            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__Delete__DelElementsAssignment_0_5_0_1_016223); 
             after(grammarAccess.getDeleteAccess().getDelElementsINTTerminalRuleCall_0_5_0_1_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__DelElementsAssignment_0_5_0_1_0"


    // $ANTLR start "rule__Delete__DelVarsAssignment_0_5_0_1_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7888:1: rule__Delete__DelVarsAssignment_0_5_0_1_1 : ( ( RULE_ID ) ) ;
    public final void rule__Delete__DelVarsAssignment_0_5_0_1_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7892:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7893:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7893:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7894:1: ( RULE_ID )
            {
             before(grammarAccess.getDeleteAccess().getDelVarsSimpleVariableCrossReference_0_5_0_1_1_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7895:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7896:1: RULE_ID
            {
             before(grammarAccess.getDeleteAccess().getDelVarsSimpleVariableIDTerminalRuleCall_0_5_0_1_1_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Delete__DelVarsAssignment_0_5_0_1_116258); 
             after(grammarAccess.getDeleteAccess().getDelVarsSimpleVariableIDTerminalRuleCall_0_5_0_1_1_0_1()); 

            }

             after(grammarAccess.getDeleteAccess().getDelVarsSimpleVariableCrossReference_0_5_0_1_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__DelVarsAssignment_0_5_0_1_1"


    // $ANTLR start "rule__Delete__DelArraysAssignment_0_5_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7907:1: rule__Delete__DelArraysAssignment_0_5_1 : ( ruleArrayElement ) ;
    public final void rule__Delete__DelArraysAssignment_0_5_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7911:1: ( ( ruleArrayElement ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7912:1: ( ruleArrayElement )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7912:1: ( ruleArrayElement )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7913:1: ruleArrayElement
            {
             before(grammarAccess.getDeleteAccess().getDelArraysArrayElementParserRuleCall_0_5_1_0()); 
            pushFollow(FOLLOW_ruleArrayElement_in_rule__Delete__DelArraysAssignment_0_5_116293);
            ruleArrayElement();

            state._fsp--;

             after(grammarAccess.getDeleteAccess().getDelArraysArrayElementParserRuleCall_0_5_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__DelArraysAssignment_0_5_1"


    // $ANTLR start "rule__Delete__SizeAssignment_0_5_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7922:1: rule__Delete__SizeAssignment_0_5_2 : ( ruleSize ) ;
    public final void rule__Delete__SizeAssignment_0_5_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7926:1: ( ( ruleSize ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7927:1: ( ruleSize )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7927:1: ( ruleSize )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7928:1: ruleSize
            {
             before(grammarAccess.getDeleteAccess().getSizeSizeParserRuleCall_0_5_2_0()); 
            pushFollow(FOLLOW_ruleSize_in_rule__Delete__SizeAssignment_0_5_216324);
            ruleSize();

            state._fsp--;

             after(grammarAccess.getDeleteAccess().getSizeSizeParserRuleCall_0_5_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__SizeAssignment_0_5_2"


    // $ANTLR start "rule__Delete__ArrayAssignment_1_0_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7937:1: rule__Delete__ArrayAssignment_1_0_0 : ( ( RULE_ID ) ) ;
    public final void rule__Delete__ArrayAssignment_1_0_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7941:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7942:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7942:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7943:1: ( RULE_ID )
            {
             before(grammarAccess.getDeleteAccess().getArrayArrayCrossReference_1_0_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7944:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7945:1: RULE_ID
            {
             before(grammarAccess.getDeleteAccess().getArrayArrayIDTerminalRuleCall_1_0_0_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Delete__ArrayAssignment_1_0_016359); 
             after(grammarAccess.getDeleteAccess().getArrayArrayIDTerminalRuleCall_1_0_0_0_1()); 

            }

             after(grammarAccess.getDeleteAccess().getArrayArrayCrossReference_1_0_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__ArrayAssignment_1_0_0"


    // $ANTLR start "rule__Delete__ArrayElementAssignment_1_0_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7956:1: rule__Delete__ArrayElementAssignment_1_0_1 : ( ruleArrayElement ) ;
    public final void rule__Delete__ArrayElementAssignment_1_0_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7960:1: ( ( ruleArrayElement ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7961:1: ( ruleArrayElement )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7961:1: ( ruleArrayElement )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7962:1: ruleArrayElement
            {
             before(grammarAccess.getDeleteAccess().getArrayElementArrayElementParserRuleCall_1_0_1_0()); 
            pushFollow(FOLLOW_ruleArrayElement_in_rule__Delete__ArrayElementAssignment_1_0_116394);
            ruleArrayElement();

            state._fsp--;

             after(grammarAccess.getDeleteAccess().getArrayElementArrayElementParserRuleCall_1_0_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__ArrayElementAssignment_1_0_1"


    // $ANTLR start "rule__Delete__MethodAssignment_1_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7971:1: rule__Delete__MethodAssignment_1_2 : ( ( 'delete' ) ) ;
    public final void rule__Delete__MethodAssignment_1_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7975:1: ( ( ( 'delete' ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7976:1: ( ( 'delete' ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7976:1: ( ( 'delete' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7977:1: ( 'delete' )
            {
             before(grammarAccess.getDeleteAccess().getMethodDeleteKeyword_1_2_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7978:1: ( 'delete' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7979:1: 'delete'
            {
             before(grammarAccess.getDeleteAccess().getMethodDeleteKeyword_1_2_0()); 
            match(input,28,FOLLOW_28_in_rule__Delete__MethodAssignment_1_216430); 
             after(grammarAccess.getDeleteAccess().getMethodDeleteKeyword_1_2_0()); 

            }

             after(grammarAccess.getDeleteAccess().getMethodDeleteKeyword_1_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__MethodAssignment_1_2"


    // $ANTLR start "rule__Delete__IndexsAssignment_1_4_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7994:1: rule__Delete__IndexsAssignment_1_4_0 : ( ruleIndex ) ;
    public final void rule__Delete__IndexsAssignment_1_4_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7998:1: ( ( ruleIndex ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7999:1: ( ruleIndex )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:7999:1: ( ruleIndex )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8000:1: ruleIndex
            {
             before(grammarAccess.getDeleteAccess().getIndexsIndexParserRuleCall_1_4_0_0()); 
            pushFollow(FOLLOW_ruleIndex_in_rule__Delete__IndexsAssignment_1_4_016469);
            ruleIndex();

            state._fsp--;

             after(grammarAccess.getDeleteAccess().getIndexsIndexParserRuleCall_1_4_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__IndexsAssignment_1_4_0"


    // $ANTLR start "rule__Delete__FindSimilarsAssignment_1_4_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8009:1: rule__Delete__FindSimilarsAssignment_1_4_1 : ( ruleFindSimilar ) ;
    public final void rule__Delete__FindSimilarsAssignment_1_4_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8013:1: ( ( ruleFindSimilar ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8014:1: ( ruleFindSimilar )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8014:1: ( ruleFindSimilar )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8015:1: ruleFindSimilar
            {
             before(grammarAccess.getDeleteAccess().getFindSimilarsFindSimilarParserRuleCall_1_4_1_0()); 
            pushFollow(FOLLOW_ruleFindSimilar_in_rule__Delete__FindSimilarsAssignment_1_4_116500);
            ruleFindSimilar();

            state._fsp--;

             after(grammarAccess.getDeleteAccess().getFindSimilarsFindSimilarParserRuleCall_1_4_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__FindSimilarsAssignment_1_4_1"


    // $ANTLR start "rule__Delete__HighestCRsAssignment_1_4_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8024:1: rule__Delete__HighestCRsAssignment_1_4_2 : ( ruleHighestCR ) ;
    public final void rule__Delete__HighestCRsAssignment_1_4_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8028:1: ( ( ruleHighestCR ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8029:1: ( ruleHighestCR )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8029:1: ( ruleHighestCR )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8030:1: ruleHighestCR
            {
             before(grammarAccess.getDeleteAccess().getHighestCRsHighestCRParserRuleCall_1_4_2_0()); 
            pushFollow(FOLLOW_ruleHighestCR_in_rule__Delete__HighestCRsAssignment_1_4_216531);
            ruleHighestCR();

            state._fsp--;

             after(grammarAccess.getDeleteAccess().getHighestCRsHighestCRParserRuleCall_1_4_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__HighestCRsAssignment_1_4_2"


    // $ANTLR start "rule__Delete__IndxsAssignment_1_5_1_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8039:1: rule__Delete__IndxsAssignment_1_5_1_0 : ( ruleIndex ) ;
    public final void rule__Delete__IndxsAssignment_1_5_1_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8043:1: ( ( ruleIndex ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8044:1: ( ruleIndex )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8044:1: ( ruleIndex )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8045:1: ruleIndex
            {
             before(grammarAccess.getDeleteAccess().getIndxsIndexParserRuleCall_1_5_1_0_0()); 
            pushFollow(FOLLOW_ruleIndex_in_rule__Delete__IndxsAssignment_1_5_1_016562);
            ruleIndex();

            state._fsp--;

             after(grammarAccess.getDeleteAccess().getIndxsIndexParserRuleCall_1_5_1_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__IndxsAssignment_1_5_1_0"


    // $ANTLR start "rule__Delete__FindSimilarsAssignment_1_5_1_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8054:1: rule__Delete__FindSimilarsAssignment_1_5_1_1 : ( ruleFindSimilar ) ;
    public final void rule__Delete__FindSimilarsAssignment_1_5_1_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8058:1: ( ( ruleFindSimilar ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8059:1: ( ruleFindSimilar )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8059:1: ( ruleFindSimilar )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8060:1: ruleFindSimilar
            {
             before(grammarAccess.getDeleteAccess().getFindSimilarsFindSimilarParserRuleCall_1_5_1_1_0()); 
            pushFollow(FOLLOW_ruleFindSimilar_in_rule__Delete__FindSimilarsAssignment_1_5_1_116593);
            ruleFindSimilar();

            state._fsp--;

             after(grammarAccess.getDeleteAccess().getFindSimilarsFindSimilarParserRuleCall_1_5_1_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__FindSimilarsAssignment_1_5_1_1"


    // $ANTLR start "rule__Delete__HighestCRsAssignment_1_5_1_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8069:1: rule__Delete__HighestCRsAssignment_1_5_1_2 : ( ruleHighestCR ) ;
    public final void rule__Delete__HighestCRsAssignment_1_5_1_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8073:1: ( ( ruleHighestCR ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8074:1: ( ruleHighestCR )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8074:1: ( ruleHighestCR )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8075:1: ruleHighestCR
            {
             before(grammarAccess.getDeleteAccess().getHighestCRsHighestCRParserRuleCall_1_5_1_2_0()); 
            pushFollow(FOLLOW_ruleHighestCR_in_rule__Delete__HighestCRsAssignment_1_5_1_216624);
            ruleHighestCR();

            state._fsp--;

             after(grammarAccess.getDeleteAccess().getHighestCRsHighestCRParserRuleCall_1_5_1_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Delete__HighestCRsAssignment_1_5_1_2"


    // $ANTLR start "rule__Function__StandardFunctionAssignment_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8084:1: rule__Function__StandardFunctionAssignment_0 : ( ruleStandardFunction ) ;
    public final void rule__Function__StandardFunctionAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8088:1: ( ( ruleStandardFunction ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8089:1: ( ruleStandardFunction )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8089:1: ( ruleStandardFunction )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8090:1: ruleStandardFunction
            {
             before(grammarAccess.getFunctionAccess().getStandardFunctionStandardFunctionParserRuleCall_0_0()); 
            pushFollow(FOLLOW_ruleStandardFunction_in_rule__Function__StandardFunctionAssignment_016655);
            ruleStandardFunction();

            state._fsp--;

             after(grammarAccess.getFunctionAccess().getStandardFunctionStandardFunctionParserRuleCall_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Function__StandardFunctionAssignment_0"


    // $ANTLR start "rule__Function__CrFunctionAssignment_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8099:1: rule__Function__CrFunctionAssignment_1 : ( ruleCRFunction ) ;
    public final void rule__Function__CrFunctionAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8103:1: ( ( ruleCRFunction ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8104:1: ( ruleCRFunction )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8104:1: ( ruleCRFunction )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8105:1: ruleCRFunction
            {
             before(grammarAccess.getFunctionAccess().getCrFunctionCRFunctionParserRuleCall_1_0()); 
            pushFollow(FOLLOW_ruleCRFunction_in_rule__Function__CrFunctionAssignment_116686);
            ruleCRFunction();

            state._fsp--;

             after(grammarAccess.getFunctionAccess().getCrFunctionCRFunctionParserRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Function__CrFunctionAssignment_1"


    // $ANTLR start "rule__StandardFunction__PrintAssignment_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8114:1: rule__StandardFunction__PrintAssignment_0 : ( rulePrint ) ;
    public final void rule__StandardFunction__PrintAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8118:1: ( ( rulePrint ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8119:1: ( rulePrint )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8119:1: ( rulePrint )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8120:1: rulePrint
            {
             before(grammarAccess.getStandardFunctionAccess().getPrintPrintParserRuleCall_0_0()); 
            pushFollow(FOLLOW_rulePrint_in_rule__StandardFunction__PrintAssignment_016717);
            rulePrint();

            state._fsp--;

             after(grammarAccess.getStandardFunctionAccess().getPrintPrintParserRuleCall_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__StandardFunction__PrintAssignment_0"


    // $ANTLR start "rule__StandardFunction__ForAssignment_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8129:1: rule__StandardFunction__ForAssignment_1 : ( ruleFor ) ;
    public final void rule__StandardFunction__ForAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8133:1: ( ( ruleFor ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8134:1: ( ruleFor )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8134:1: ( ruleFor )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8135:1: ruleFor
            {
             before(grammarAccess.getStandardFunctionAccess().getForForParserRuleCall_1_0()); 
            pushFollow(FOLLOW_ruleFor_in_rule__StandardFunction__ForAssignment_116748);
            ruleFor();

            state._fsp--;

             after(grammarAccess.getStandardFunctionAccess().getForForParserRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__StandardFunction__ForAssignment_1"


    // $ANTLR start "rule__StandardFunction__ForallAssignment_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8144:1: rule__StandardFunction__ForallAssignment_2 : ( ruleForall ) ;
    public final void rule__StandardFunction__ForallAssignment_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8148:1: ( ( ruleForall ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8149:1: ( ruleForall )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8149:1: ( ruleForall )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8150:1: ruleForall
            {
             before(grammarAccess.getStandardFunctionAccess().getForallForallParserRuleCall_2_0()); 
            pushFollow(FOLLOW_ruleForall_in_rule__StandardFunction__ForallAssignment_216779);
            ruleForall();

            state._fsp--;

             after(grammarAccess.getStandardFunctionAccess().getForallForallParserRuleCall_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__StandardFunction__ForallAssignment_2"


    // $ANTLR start "rule__Print__FunctionAssignment_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8159:1: rule__Print__FunctionAssignment_0 : ( ( 'print' ) ) ;
    public final void rule__Print__FunctionAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8163:1: ( ( ( 'print' ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8164:1: ( ( 'print' ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8164:1: ( ( 'print' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8165:1: ( 'print' )
            {
             before(grammarAccess.getPrintAccess().getFunctionPrintKeyword_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8166:1: ( 'print' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8167:1: 'print'
            {
             before(grammarAccess.getPrintAccess().getFunctionPrintKeyword_0_0()); 
            match(input,29,FOLLOW_29_in_rule__Print__FunctionAssignment_016815); 
             after(grammarAccess.getPrintAccess().getFunctionPrintKeyword_0_0()); 

            }

             after(grammarAccess.getPrintAccess().getFunctionPrintKeyword_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Print__FunctionAssignment_0"


    // $ANTLR start "rule__Print__VarAssignment_2_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8182:1: rule__Print__VarAssignment_2_0 : ( ( RULE_ID ) ) ;
    public final void rule__Print__VarAssignment_2_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8186:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8187:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8187:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8188:1: ( RULE_ID )
            {
             before(grammarAccess.getPrintAccess().getVarVariableCrossReference_2_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8189:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8190:1: RULE_ID
            {
             before(grammarAccess.getPrintAccess().getVarVariableIDTerminalRuleCall_2_0_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Print__VarAssignment_2_016858); 
             after(grammarAccess.getPrintAccess().getVarVariableIDTerminalRuleCall_2_0_0_1()); 

            }

             after(grammarAccess.getPrintAccess().getVarVariableCrossReference_2_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Print__VarAssignment_2_0"


    // $ANTLR start "rule__Print__MsgAssignment_2_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8201:1: rule__Print__MsgAssignment_2_1 : ( RULE_STRING ) ;
    public final void rule__Print__MsgAssignment_2_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8205:1: ( ( RULE_STRING ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8206:1: ( RULE_STRING )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8206:1: ( RULE_STRING )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8207:1: RULE_STRING
            {
             before(grammarAccess.getPrintAccess().getMsgSTRINGTerminalRuleCall_2_1_0()); 
            match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__Print__MsgAssignment_2_116893); 
             after(grammarAccess.getPrintAccess().getMsgSTRINGTerminalRuleCall_2_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Print__MsgAssignment_2_1"


    // $ANTLR start "rule__Print__AeParamAssignment_2_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8216:1: rule__Print__AeParamAssignment_2_2 : ( ruleArrayElement ) ;
    public final void rule__Print__AeParamAssignment_2_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8220:1: ( ( ruleArrayElement ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8221:1: ( ruleArrayElement )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8221:1: ( ruleArrayElement )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8222:1: ruleArrayElement
            {
             before(grammarAccess.getPrintAccess().getAeParamArrayElementParserRuleCall_2_2_0()); 
            pushFollow(FOLLOW_ruleArrayElement_in_rule__Print__AeParamAssignment_2_216924);
            ruleArrayElement();

            state._fsp--;

             after(grammarAccess.getPrintAccess().getAeParamArrayElementParserRuleCall_2_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Print__AeParamAssignment_2_2"


    // $ANTLR start "rule__Print__VarAssignment_3_1_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8231:1: rule__Print__VarAssignment_3_1_0 : ( ( RULE_ID ) ) ;
    public final void rule__Print__VarAssignment_3_1_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8235:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8236:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8236:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8237:1: ( RULE_ID )
            {
             before(grammarAccess.getPrintAccess().getVarVariableCrossReference_3_1_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8238:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8239:1: RULE_ID
            {
             before(grammarAccess.getPrintAccess().getVarVariableIDTerminalRuleCall_3_1_0_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Print__VarAssignment_3_1_016959); 
             after(grammarAccess.getPrintAccess().getVarVariableIDTerminalRuleCall_3_1_0_0_1()); 

            }

             after(grammarAccess.getPrintAccess().getVarVariableCrossReference_3_1_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Print__VarAssignment_3_1_0"


    // $ANTLR start "rule__Print__MsgAssignment_3_1_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8250:1: rule__Print__MsgAssignment_3_1_1 : ( RULE_STRING ) ;
    public final void rule__Print__MsgAssignment_3_1_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8254:1: ( ( RULE_STRING ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8255:1: ( RULE_STRING )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8255:1: ( RULE_STRING )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8256:1: RULE_STRING
            {
             before(grammarAccess.getPrintAccess().getMsgSTRINGTerminalRuleCall_3_1_1_0()); 
            match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__Print__MsgAssignment_3_1_116994); 
             after(grammarAccess.getPrintAccess().getMsgSTRINGTerminalRuleCall_3_1_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Print__MsgAssignment_3_1_1"


    // $ANTLR start "rule__Print__AeParamAssignment_3_1_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8265:1: rule__Print__AeParamAssignment_3_1_2 : ( ruleArrayElement ) ;
    public final void rule__Print__AeParamAssignment_3_1_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8269:1: ( ( ruleArrayElement ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8270:1: ( ruleArrayElement )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8270:1: ( ruleArrayElement )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8271:1: ruleArrayElement
            {
             before(grammarAccess.getPrintAccess().getAeParamArrayElementParserRuleCall_3_1_2_0()); 
            pushFollow(FOLLOW_ruleArrayElement_in_rule__Print__AeParamAssignment_3_1_217025);
            ruleArrayElement();

            state._fsp--;

             after(grammarAccess.getPrintAccess().getAeParamArrayElementParserRuleCall_3_1_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Print__AeParamAssignment_3_1_2"


    // $ANTLR start "rule__For__FunctionAssignment_0_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8280:1: rule__For__FunctionAssignment_0_0 : ( ( 'for' ) ) ;
    public final void rule__For__FunctionAssignment_0_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8284:1: ( ( ( 'for' ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8285:1: ( ( 'for' ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8285:1: ( ( 'for' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8286:1: ( 'for' )
            {
             before(grammarAccess.getForAccess().getFunctionForKeyword_0_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8287:1: ( 'for' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8288:1: 'for'
            {
             before(grammarAccess.getForAccess().getFunctionForKeyword_0_0_0()); 
            match(input,30,FOLLOW_30_in_rule__For__FunctionAssignment_0_017061); 
             after(grammarAccess.getForAccess().getFunctionForKeyword_0_0_0()); 

            }

             after(grammarAccess.getForAccess().getFunctionForKeyword_0_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__FunctionAssignment_0_0"


    // $ANTLR start "rule__For__LocVarAssignment_0_3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8303:1: rule__For__LocVarAssignment_0_3 : ( ( RULE_ID ) ) ;
    public final void rule__For__LocVarAssignment_0_3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8307:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8308:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8308:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8309:1: ( RULE_ID )
            {
             before(grammarAccess.getForAccess().getLocVarSimpleVariableCrossReference_0_3_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8310:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8311:1: RULE_ID
            {
             before(grammarAccess.getForAccess().getLocVarSimpleVariableIDTerminalRuleCall_0_3_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__For__LocVarAssignment_0_317104); 
             after(grammarAccess.getForAccess().getLocVarSimpleVariableIDTerminalRuleCall_0_3_0_1()); 

            }

             after(grammarAccess.getForAccess().getLocVarSimpleVariableCrossReference_0_3_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__LocVarAssignment_0_3"


    // $ANTLR start "rule__For__DirAssignment_0_5"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8322:1: rule__For__DirAssignment_0_5 : ( ruleFolder ) ;
    public final void rule__For__DirAssignment_0_5() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8326:1: ( ( ruleFolder ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8327:1: ( ruleFolder )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8327:1: ( ruleFolder )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8328:1: ruleFolder
            {
             before(grammarAccess.getForAccess().getDirFolderParserRuleCall_0_5_0()); 
            pushFollow(FOLLOW_ruleFolder_in_rule__For__DirAssignment_0_517139);
            ruleFolder();

            state._fsp--;

             after(grammarAccess.getForAccess().getDirFolderParserRuleCall_0_5_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__DirAssignment_0_5"


    // $ANTLR start "rule__For__InnerElementsAssignment_0_8"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8337:1: rule__For__InnerElementsAssignment_0_8 : ( ruleElement ) ;
    public final void rule__For__InnerElementsAssignment_0_8() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8341:1: ( ( ruleElement ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8342:1: ( ruleElement )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8342:1: ( ruleElement )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8343:1: ruleElement
            {
             before(grammarAccess.getForAccess().getInnerElementsElementParserRuleCall_0_8_0()); 
            pushFollow(FOLLOW_ruleElement_in_rule__For__InnerElementsAssignment_0_817170);
            ruleElement();

            state._fsp--;

             after(grammarAccess.getForAccess().getInnerElementsElementParserRuleCall_0_8_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__InnerElementsAssignment_0_8"


    // $ANTLR start "rule__For__FunctionAssignment_1_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8352:1: rule__For__FunctionAssignment_1_0 : ( ( 'for' ) ) ;
    public final void rule__For__FunctionAssignment_1_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8356:1: ( ( ( 'for' ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8357:1: ( ( 'for' ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8357:1: ( ( 'for' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8358:1: ( 'for' )
            {
             before(grammarAccess.getForAccess().getFunctionForKeyword_1_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8359:1: ( 'for' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8360:1: 'for'
            {
             before(grammarAccess.getForAccess().getFunctionForKeyword_1_0_0()); 
            match(input,30,FOLLOW_30_in_rule__For__FunctionAssignment_1_017206); 
             after(grammarAccess.getForAccess().getFunctionForKeyword_1_0_0()); 

            }

             after(grammarAccess.getForAccess().getFunctionForKeyword_1_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__FunctionAssignment_1_0"


    // $ANTLR start "rule__For__VarAssignment_1_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8375:1: rule__For__VarAssignment_1_2 : ( ( RULE_ID ) ) ;
    public final void rule__For__VarAssignment_1_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8379:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8380:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8380:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8381:1: ( RULE_ID )
            {
             before(grammarAccess.getForAccess().getVarArrayCrossReference_1_2_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8382:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8383:1: RULE_ID
            {
             before(grammarAccess.getForAccess().getVarArrayIDTerminalRuleCall_1_2_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__For__VarAssignment_1_217249); 
             after(grammarAccess.getForAccess().getVarArrayIDTerminalRuleCall_1_2_0_1()); 

            }

             after(grammarAccess.getForAccess().getVarArrayCrossReference_1_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__VarAssignment_1_2"


    // $ANTLR start "rule__For__InnerElementsAssignment_1_5"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8394:1: rule__For__InnerElementsAssignment_1_5 : ( ruleElement ) ;
    public final void rule__For__InnerElementsAssignment_1_5() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8398:1: ( ( ruleElement ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8399:1: ( ruleElement )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8399:1: ( ruleElement )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8400:1: ruleElement
            {
             before(grammarAccess.getForAccess().getInnerElementsElementParserRuleCall_1_5_0()); 
            pushFollow(FOLLOW_ruleElement_in_rule__For__InnerElementsAssignment_1_517284);
            ruleElement();

            state._fsp--;

             after(grammarAccess.getForAccess().getInnerElementsElementParserRuleCall_1_5_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__For__InnerElementsAssignment_1_5"


    // $ANTLR start "rule__Forall__FunctionAssignment_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8409:1: rule__Forall__FunctionAssignment_0 : ( ( 'forall' ) ) ;
    public final void rule__Forall__FunctionAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8413:1: ( ( ( 'forall' ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8414:1: ( ( 'forall' ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8414:1: ( ( 'forall' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8415:1: ( 'forall' )
            {
             before(grammarAccess.getForallAccess().getFunctionForallKeyword_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8416:1: ( 'forall' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8417:1: 'forall'
            {
             before(grammarAccess.getForallAccess().getFunctionForallKeyword_0_0()); 
            match(input,31,FOLLOW_31_in_rule__Forall__FunctionAssignment_017320); 
             after(grammarAccess.getForallAccess().getFunctionForallKeyword_0_0()); 

            }

             after(grammarAccess.getForallAccess().getFunctionForallKeyword_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__FunctionAssignment_0"


    // $ANTLR start "rule__Forall__LocVarAssignment_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8432:1: rule__Forall__LocVarAssignment_1 : ( ( RULE_ID ) ) ;
    public final void rule__Forall__LocVarAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8436:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8437:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8437:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8438:1: ( RULE_ID )
            {
             before(grammarAccess.getForallAccess().getLocVarSimpleVariableCrossReference_1_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8439:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8440:1: RULE_ID
            {
             before(grammarAccess.getForallAccess().getLocVarSimpleVariableIDTerminalRuleCall_1_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Forall__LocVarAssignment_117363); 
             after(grammarAccess.getForallAccess().getLocVarSimpleVariableIDTerminalRuleCall_1_0_1()); 

            }

             after(grammarAccess.getForallAccess().getLocVarSimpleVariableCrossReference_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__LocVarAssignment_1"


    // $ANTLR start "rule__Forall__BeginAssignment_3_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8451:1: rule__Forall__BeginAssignment_3_0 : ( RULE_INT ) ;
    public final void rule__Forall__BeginAssignment_3_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8455:1: ( ( RULE_INT ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8456:1: ( RULE_INT )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8456:1: ( RULE_INT )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8457:1: RULE_INT
            {
             before(grammarAccess.getForallAccess().getBeginINTTerminalRuleCall_3_0_0()); 
            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__Forall__BeginAssignment_3_017398); 
             after(grammarAccess.getForallAccess().getBeginINTTerminalRuleCall_3_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__BeginAssignment_3_0"


    // $ANTLR start "rule__Forall__BeginVarAssignment_3_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8466:1: rule__Forall__BeginVarAssignment_3_1 : ( ( RULE_ID ) ) ;
    public final void rule__Forall__BeginVarAssignment_3_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8470:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8471:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8471:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8472:1: ( RULE_ID )
            {
             before(grammarAccess.getForallAccess().getBeginVarSimpleVariableCrossReference_3_1_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8473:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8474:1: RULE_ID
            {
             before(grammarAccess.getForallAccess().getBeginVarSimpleVariableIDTerminalRuleCall_3_1_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Forall__BeginVarAssignment_3_117433); 
             after(grammarAccess.getForallAccess().getBeginVarSimpleVariableIDTerminalRuleCall_3_1_0_1()); 

            }

             after(grammarAccess.getForallAccess().getBeginVarSimpleVariableCrossReference_3_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__BeginVarAssignment_3_1"


    // $ANTLR start "rule__Forall__BeginFunctionAssignment_3_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8485:1: rule__Forall__BeginFunctionAssignment_3_2 : ( ruleSize ) ;
    public final void rule__Forall__BeginFunctionAssignment_3_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8489:1: ( ( ruleSize ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8490:1: ( ruleSize )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8490:1: ( ruleSize )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8491:1: ruleSize
            {
             before(grammarAccess.getForallAccess().getBeginFunctionSizeParserRuleCall_3_2_0()); 
            pushFollow(FOLLOW_ruleSize_in_rule__Forall__BeginFunctionAssignment_3_217468);
            ruleSize();

            state._fsp--;

             after(grammarAccess.getForallAccess().getBeginFunctionSizeParserRuleCall_3_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__BeginFunctionAssignment_3_2"


    // $ANTLR start "rule__Forall__BeginAEAssignment_3_3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8500:1: rule__Forall__BeginAEAssignment_3_3 : ( ruleArrayElement ) ;
    public final void rule__Forall__BeginAEAssignment_3_3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8504:1: ( ( ruleArrayElement ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8505:1: ( ruleArrayElement )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8505:1: ( ruleArrayElement )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8506:1: ruleArrayElement
            {
             before(grammarAccess.getForallAccess().getBeginAEArrayElementParserRuleCall_3_3_0()); 
            pushFollow(FOLLOW_ruleArrayElement_in_rule__Forall__BeginAEAssignment_3_317499);
            ruleArrayElement();

            state._fsp--;

             after(grammarAccess.getForallAccess().getBeginAEArrayElementParserRuleCall_3_3_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__BeginAEAssignment_3_3"


    // $ANTLR start "rule__Forall__EndAssignment_5_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8515:1: rule__Forall__EndAssignment_5_0 : ( RULE_INT ) ;
    public final void rule__Forall__EndAssignment_5_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8519:1: ( ( RULE_INT ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8520:1: ( RULE_INT )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8520:1: ( RULE_INT )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8521:1: RULE_INT
            {
             before(grammarAccess.getForallAccess().getEndINTTerminalRuleCall_5_0_0()); 
            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__Forall__EndAssignment_5_017530); 
             after(grammarAccess.getForallAccess().getEndINTTerminalRuleCall_5_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__EndAssignment_5_0"


    // $ANTLR start "rule__Forall__EndVarAssignment_5_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8530:1: rule__Forall__EndVarAssignment_5_1 : ( ( RULE_ID ) ) ;
    public final void rule__Forall__EndVarAssignment_5_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8534:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8535:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8535:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8536:1: ( RULE_ID )
            {
             before(grammarAccess.getForallAccess().getEndVarSimpleVariableCrossReference_5_1_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8537:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8538:1: RULE_ID
            {
             before(grammarAccess.getForallAccess().getEndVarSimpleVariableIDTerminalRuleCall_5_1_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Forall__EndVarAssignment_5_117565); 
             after(grammarAccess.getForallAccess().getEndVarSimpleVariableIDTerminalRuleCall_5_1_0_1()); 

            }

             after(grammarAccess.getForallAccess().getEndVarSimpleVariableCrossReference_5_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__EndVarAssignment_5_1"


    // $ANTLR start "rule__Forall__EndFunctionAssignment_5_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8549:1: rule__Forall__EndFunctionAssignment_5_2 : ( ruleSize ) ;
    public final void rule__Forall__EndFunctionAssignment_5_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8553:1: ( ( ruleSize ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8554:1: ( ruleSize )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8554:1: ( ruleSize )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8555:1: ruleSize
            {
             before(grammarAccess.getForallAccess().getEndFunctionSizeParserRuleCall_5_2_0()); 
            pushFollow(FOLLOW_ruleSize_in_rule__Forall__EndFunctionAssignment_5_217600);
            ruleSize();

            state._fsp--;

             after(grammarAccess.getForallAccess().getEndFunctionSizeParserRuleCall_5_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__EndFunctionAssignment_5_2"


    // $ANTLR start "rule__Forall__EndAEAssignment_5_3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8564:1: rule__Forall__EndAEAssignment_5_3 : ( ruleArrayElement ) ;
    public final void rule__Forall__EndAEAssignment_5_3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8568:1: ( ( ruleArrayElement ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8569:1: ( ruleArrayElement )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8569:1: ( ruleArrayElement )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8570:1: ruleArrayElement
            {
             before(grammarAccess.getForallAccess().getEndAEArrayElementParserRuleCall_5_3_0()); 
            pushFollow(FOLLOW_ruleArrayElement_in_rule__Forall__EndAEAssignment_5_317631);
            ruleArrayElement();

            state._fsp--;

             after(grammarAccess.getForallAccess().getEndAEArrayElementParserRuleCall_5_3_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__EndAEAssignment_5_3"


    // $ANTLR start "rule__Forall__InnerElementsAssignment_8"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8579:1: rule__Forall__InnerElementsAssignment_8 : ( ruleElement ) ;
    public final void rule__Forall__InnerElementsAssignment_8() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8583:1: ( ( ruleElement ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8584:1: ( ruleElement )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8584:1: ( ruleElement )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8585:1: ruleElement
            {
             before(grammarAccess.getForallAccess().getInnerElementsElementParserRuleCall_8_0()); 
            pushFollow(FOLLOW_ruleElement_in_rule__Forall__InnerElementsAssignment_817662);
            ruleElement();

            state._fsp--;

             after(grammarAccess.getForallAccess().getInnerElementsElementParserRuleCall_8_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Forall__InnerElementsAssignment_8"


    // $ANTLR start "rule__CRFunction__CalcCRAssignment_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8594:1: rule__CRFunction__CalcCRAssignment_0 : ( ruleCalcCR ) ;
    public final void rule__CRFunction__CalcCRAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8598:1: ( ( ruleCalcCR ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8599:1: ( ruleCalcCR )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8599:1: ( ruleCalcCR )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8600:1: ruleCalcCR
            {
             before(grammarAccess.getCRFunctionAccess().getCalcCRCalcCRParserRuleCall_0_0()); 
            pushFollow(FOLLOW_ruleCalcCR_in_rule__CRFunction__CalcCRAssignment_017693);
            ruleCalcCR();

            state._fsp--;

             after(grammarAccess.getCRFunctionAccess().getCalcCRCalcCRParserRuleCall_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CRFunction__CalcCRAssignment_0"


    // $ANTLR start "rule__CRFunction__CalcMeanAssignment_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8609:1: rule__CRFunction__CalcMeanAssignment_1 : ( ruleCalcMean ) ;
    public final void rule__CRFunction__CalcMeanAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8613:1: ( ( ruleCalcMean ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8614:1: ( ruleCalcMean )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8614:1: ( ruleCalcMean )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8615:1: ruleCalcMean
            {
             before(grammarAccess.getCRFunctionAccess().getCalcMeanCalcMeanParserRuleCall_1_0()); 
            pushFollow(FOLLOW_ruleCalcMean_in_rule__CRFunction__CalcMeanAssignment_117724);
            ruleCalcMean();

            state._fsp--;

             after(grammarAccess.getCRFunctionAccess().getCalcMeanCalcMeanParserRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CRFunction__CalcMeanAssignment_1"


    // $ANTLR start "rule__CRFunction__HighestCRAssignment_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8624:1: rule__CRFunction__HighestCRAssignment_2 : ( ruleHighestCR ) ;
    public final void rule__CRFunction__HighestCRAssignment_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8628:1: ( ( ruleHighestCR ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8629:1: ( ruleHighestCR )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8629:1: ( ruleHighestCR )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8630:1: ruleHighestCR
            {
             before(grammarAccess.getCRFunctionAccess().getHighestCRHighestCRParserRuleCall_2_0()); 
            pushFollow(FOLLOW_ruleHighestCR_in_rule__CRFunction__HighestCRAssignment_217755);
            ruleHighestCR();

            state._fsp--;

             after(grammarAccess.getCRFunctionAccess().getHighestCRHighestCRParserRuleCall_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CRFunction__HighestCRAssignment_2"


    // $ANTLR start "rule__CRFunction__FindSimilarAssignment_3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8639:1: rule__CRFunction__FindSimilarAssignment_3 : ( ruleFindSimilar ) ;
    public final void rule__CRFunction__FindSimilarAssignment_3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8643:1: ( ( ruleFindSimilar ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8644:1: ( ruleFindSimilar )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8644:1: ( ruleFindSimilar )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8645:1: ruleFindSimilar
            {
             before(grammarAccess.getCRFunctionAccess().getFindSimilarFindSimilarParserRuleCall_3_0()); 
            pushFollow(FOLLOW_ruleFindSimilar_in_rule__CRFunction__FindSimilarAssignment_317786);
            ruleFindSimilar();

            state._fsp--;

             after(grammarAccess.getCRFunctionAccess().getFindSimilarFindSimilarParserRuleCall_3_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CRFunction__FindSimilarAssignment_3"


    // $ANTLR start "rule__CalcCR__FunctionAssignment_0_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8654:1: rule__CalcCR__FunctionAssignment_0_0 : ( ( 'calcCR' ) ) ;
    public final void rule__CalcCR__FunctionAssignment_0_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8658:1: ( ( ( 'calcCR' ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8659:1: ( ( 'calcCR' ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8659:1: ( ( 'calcCR' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8660:1: ( 'calcCR' )
            {
             before(grammarAccess.getCalcCRAccess().getFunctionCalcCRKeyword_0_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8661:1: ( 'calcCR' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8662:1: 'calcCR'
            {
             before(grammarAccess.getCalcCRAccess().getFunctionCalcCRKeyword_0_0_0()); 
            match(input,32,FOLLOW_32_in_rule__CalcCR__FunctionAssignment_0_017822); 
             after(grammarAccess.getCalcCRAccess().getFunctionCalcCRKeyword_0_0_0()); 

            }

             after(grammarAccess.getCalcCRAccess().getFunctionCalcCRKeyword_0_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__FunctionAssignment_0_0"


    // $ANTLR start "rule__CalcCR__VectorAssignment_0_2_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8677:1: rule__CalcCR__VectorAssignment_0_2_0 : ( ( RULE_ID ) ) ;
    public final void rule__CalcCR__VectorAssignment_0_2_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8681:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8682:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8682:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8683:1: ( RULE_ID )
            {
             before(grammarAccess.getCalcCRAccess().getVectorArrayCrossReference_0_2_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8684:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8685:1: RULE_ID
            {
             before(grammarAccess.getCalcCRAccess().getVectorArrayIDTerminalRuleCall_0_2_0_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__CalcCR__VectorAssignment_0_2_017865); 
             after(grammarAccess.getCalcCRAccess().getVectorArrayIDTerminalRuleCall_0_2_0_0_1()); 

            }

             after(grammarAccess.getCalcCRAccess().getVectorArrayCrossReference_0_2_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__VectorAssignment_0_2_0"


    // $ANTLR start "rule__CalcCR__ArrayElementAssignment_0_2_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8696:1: rule__CalcCR__ArrayElementAssignment_0_2_1 : ( ruleArrayElement ) ;
    public final void rule__CalcCR__ArrayElementAssignment_0_2_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8700:1: ( ( ruleArrayElement ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8701:1: ( ruleArrayElement )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8701:1: ( ruleArrayElement )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8702:1: ruleArrayElement
            {
             before(grammarAccess.getCalcCRAccess().getArrayElementArrayElementParserRuleCall_0_2_1_0()); 
            pushFollow(FOLLOW_ruleArrayElement_in_rule__CalcCR__ArrayElementAssignment_0_2_117900);
            ruleArrayElement();

            state._fsp--;

             after(grammarAccess.getCalcCRAccess().getArrayElementArrayElementParserRuleCall_0_2_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__ArrayElementAssignment_0_2_1"


    // $ANTLR start "rule__CalcCR__FunctionAssignment_1_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8711:1: rule__CalcCR__FunctionAssignment_1_0 : ( ( 'calcCR' ) ) ;
    public final void rule__CalcCR__FunctionAssignment_1_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8715:1: ( ( ( 'calcCR' ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8716:1: ( ( 'calcCR' ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8716:1: ( ( 'calcCR' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8717:1: ( 'calcCR' )
            {
             before(grammarAccess.getCalcCRAccess().getFunctionCalcCRKeyword_1_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8718:1: ( 'calcCR' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8719:1: 'calcCR'
            {
             before(grammarAccess.getCalcCRAccess().getFunctionCalcCRKeyword_1_0_0()); 
            match(input,32,FOLLOW_32_in_rule__CalcCR__FunctionAssignment_1_017936); 
             after(grammarAccess.getCalcCRAccess().getFunctionCalcCRKeyword_1_0_0()); 

            }

             after(grammarAccess.getCalcCRAccess().getFunctionCalcCRKeyword_1_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__FunctionAssignment_1_0"


    // $ANTLR start "rule__CalcCR__ArrayElement1Assignment_1_2_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8734:1: rule__CalcCR__ArrayElement1Assignment_1_2_0 : ( ruleArrayElement ) ;
    public final void rule__CalcCR__ArrayElement1Assignment_1_2_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8738:1: ( ( ruleArrayElement ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8739:1: ( ruleArrayElement )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8739:1: ( ruleArrayElement )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8740:1: ruleArrayElement
            {
             before(grammarAccess.getCalcCRAccess().getArrayElement1ArrayElementParserRuleCall_1_2_0_0()); 
            pushFollow(FOLLOW_ruleArrayElement_in_rule__CalcCR__ArrayElement1Assignment_1_2_017975);
            ruleArrayElement();

            state._fsp--;

             after(grammarAccess.getCalcCRAccess().getArrayElement1ArrayElementParserRuleCall_1_2_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__ArrayElement1Assignment_1_2_0"


    // $ANTLR start "rule__CalcCR__Var1Assignment_1_2_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8749:1: rule__CalcCR__Var1Assignment_1_2_1 : ( ( RULE_ID ) ) ;
    public final void rule__CalcCR__Var1Assignment_1_2_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8753:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8754:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8754:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8755:1: ( RULE_ID )
            {
             before(grammarAccess.getCalcCRAccess().getVar1SimpleVariableCrossReference_1_2_1_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8756:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8757:1: RULE_ID
            {
             before(grammarAccess.getCalcCRAccess().getVar1SimpleVariableIDTerminalRuleCall_1_2_1_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__CalcCR__Var1Assignment_1_2_118010); 
             after(grammarAccess.getCalcCRAccess().getVar1SimpleVariableIDTerminalRuleCall_1_2_1_0_1()); 

            }

             after(grammarAccess.getCalcCRAccess().getVar1SimpleVariableCrossReference_1_2_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__Var1Assignment_1_2_1"


    // $ANTLR start "rule__CalcCR__ArrayElement2Assignment_1_4_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8768:1: rule__CalcCR__ArrayElement2Assignment_1_4_0 : ( ruleArrayElement ) ;
    public final void rule__CalcCR__ArrayElement2Assignment_1_4_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8772:1: ( ( ruleArrayElement ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8773:1: ( ruleArrayElement )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8773:1: ( ruleArrayElement )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8774:1: ruleArrayElement
            {
             before(grammarAccess.getCalcCRAccess().getArrayElement2ArrayElementParserRuleCall_1_4_0_0()); 
            pushFollow(FOLLOW_ruleArrayElement_in_rule__CalcCR__ArrayElement2Assignment_1_4_018045);
            ruleArrayElement();

            state._fsp--;

             after(grammarAccess.getCalcCRAccess().getArrayElement2ArrayElementParserRuleCall_1_4_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__ArrayElement2Assignment_1_4_0"


    // $ANTLR start "rule__CalcCR__Var2Assignment_1_4_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8783:1: rule__CalcCR__Var2Assignment_1_4_1 : ( ( RULE_ID ) ) ;
    public final void rule__CalcCR__Var2Assignment_1_4_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8787:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8788:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8788:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8789:1: ( RULE_ID )
            {
             before(grammarAccess.getCalcCRAccess().getVar2VariableCrossReference_1_4_1_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8790:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8791:1: RULE_ID
            {
             before(grammarAccess.getCalcCRAccess().getVar2VariableIDTerminalRuleCall_1_4_1_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__CalcCR__Var2Assignment_1_4_118080); 
             after(grammarAccess.getCalcCRAccess().getVar2VariableIDTerminalRuleCall_1_4_1_0_1()); 

            }

             after(grammarAccess.getCalcCRAccess().getVar2VariableCrossReference_1_4_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcCR__Var2Assignment_1_4_1"


    // $ANTLR start "rule__CalcMean__FunctionAssignment_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8802:1: rule__CalcMean__FunctionAssignment_0 : ( ( 'calcMean' ) ) ;
    public final void rule__CalcMean__FunctionAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8806:1: ( ( ( 'calcMean' ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8807:1: ( ( 'calcMean' ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8807:1: ( ( 'calcMean' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8808:1: ( 'calcMean' )
            {
             before(grammarAccess.getCalcMeanAccess().getFunctionCalcMeanKeyword_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8809:1: ( 'calcMean' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8810:1: 'calcMean'
            {
             before(grammarAccess.getCalcMeanAccess().getFunctionCalcMeanKeyword_0_0()); 
            match(input,33,FOLLOW_33_in_rule__CalcMean__FunctionAssignment_018120); 
             after(grammarAccess.getCalcMeanAccess().getFunctionCalcMeanKeyword_0_0()); 

            }

             after(grammarAccess.getCalcMeanAccess().getFunctionCalcMeanKeyword_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcMean__FunctionAssignment_0"


    // $ANTLR start "rule__CalcMean__ArrayAssignment_2_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8825:1: rule__CalcMean__ArrayAssignment_2_0 : ( ( RULE_ID ) ) ;
    public final void rule__CalcMean__ArrayAssignment_2_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8829:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8830:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8830:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8831:1: ( RULE_ID )
            {
             before(grammarAccess.getCalcMeanAccess().getArrayArrayCrossReference_2_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8832:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8833:1: RULE_ID
            {
             before(grammarAccess.getCalcMeanAccess().getArrayArrayIDTerminalRuleCall_2_0_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__CalcMean__ArrayAssignment_2_018163); 
             after(grammarAccess.getCalcMeanAccess().getArrayArrayIDTerminalRuleCall_2_0_0_1()); 

            }

             after(grammarAccess.getCalcMeanAccess().getArrayArrayCrossReference_2_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcMean__ArrayAssignment_2_0"


    // $ANTLR start "rule__CalcMean__ArrayElementAssignment_2_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8844:1: rule__CalcMean__ArrayElementAssignment_2_1 : ( ruleArrayElement ) ;
    public final void rule__CalcMean__ArrayElementAssignment_2_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8848:1: ( ( ruleArrayElement ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8849:1: ( ruleArrayElement )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8849:1: ( ruleArrayElement )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8850:1: ruleArrayElement
            {
             before(grammarAccess.getCalcMeanAccess().getArrayElementArrayElementParserRuleCall_2_1_0()); 
            pushFollow(FOLLOW_ruleArrayElement_in_rule__CalcMean__ArrayElementAssignment_2_118198);
            ruleArrayElement();

            state._fsp--;

             after(grammarAccess.getCalcMeanAccess().getArrayElementArrayElementParserRuleCall_2_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcMean__ArrayElementAssignment_2_1"


    // $ANTLR start "rule__CalcMean__CalcCRAssignment_2_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8859:1: rule__CalcMean__CalcCRAssignment_2_2 : ( ruleCalcCR ) ;
    public final void rule__CalcMean__CalcCRAssignment_2_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8863:1: ( ( ruleCalcCR ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8864:1: ( ruleCalcCR )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8864:1: ( ruleCalcCR )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8865:1: ruleCalcCR
            {
             before(grammarAccess.getCalcMeanAccess().getCalcCRCalcCRParserRuleCall_2_2_0()); 
            pushFollow(FOLLOW_ruleCalcCR_in_rule__CalcMean__CalcCRAssignment_2_218229);
            ruleCalcCR();

            state._fsp--;

             after(grammarAccess.getCalcMeanAccess().getCalcCRCalcCRParserRuleCall_2_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__CalcMean__CalcCRAssignment_2_2"


    // $ANTLR start "rule__HighestCR__FunctionAssignment_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8874:1: rule__HighestCR__FunctionAssignment_0 : ( ( 'highestCR' ) ) ;
    public final void rule__HighestCR__FunctionAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8878:1: ( ( ( 'highestCR' ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8879:1: ( ( 'highestCR' ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8879:1: ( ( 'highestCR' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8880:1: ( 'highestCR' )
            {
             before(grammarAccess.getHighestCRAccess().getFunctionHighestCRKeyword_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8881:1: ( 'highestCR' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8882:1: 'highestCR'
            {
             before(grammarAccess.getHighestCRAccess().getFunctionHighestCRKeyword_0_0()); 
            match(input,34,FOLLOW_34_in_rule__HighestCR__FunctionAssignment_018265); 
             after(grammarAccess.getHighestCRAccess().getFunctionHighestCRKeyword_0_0()); 

            }

             after(grammarAccess.getHighestCRAccess().getFunctionHighestCRKeyword_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__HighestCR__FunctionAssignment_0"


    // $ANTLR start "rule__HighestCR__ArrayAssignment_2_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8897:1: rule__HighestCR__ArrayAssignment_2_0 : ( ( RULE_ID ) ) ;
    public final void rule__HighestCR__ArrayAssignment_2_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8901:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8902:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8902:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8903:1: ( RULE_ID )
            {
             before(grammarAccess.getHighestCRAccess().getArrayArrayCrossReference_2_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8904:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8905:1: RULE_ID
            {
             before(grammarAccess.getHighestCRAccess().getArrayArrayIDTerminalRuleCall_2_0_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__HighestCR__ArrayAssignment_2_018308); 
             after(grammarAccess.getHighestCRAccess().getArrayArrayIDTerminalRuleCall_2_0_0_1()); 

            }

             after(grammarAccess.getHighestCRAccess().getArrayArrayCrossReference_2_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__HighestCR__ArrayAssignment_2_0"


    // $ANTLR start "rule__HighestCR__ArrayElementAssignment_2_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8916:1: rule__HighestCR__ArrayElementAssignment_2_1 : ( ruleArrayElement ) ;
    public final void rule__HighestCR__ArrayElementAssignment_2_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8920:1: ( ( ruleArrayElement ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8921:1: ( ruleArrayElement )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8921:1: ( ruleArrayElement )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8922:1: ruleArrayElement
            {
             before(grammarAccess.getHighestCRAccess().getArrayElementArrayElementParserRuleCall_2_1_0()); 
            pushFollow(FOLLOW_ruleArrayElement_in_rule__HighestCR__ArrayElementAssignment_2_118343);
            ruleArrayElement();

            state._fsp--;

             after(grammarAccess.getHighestCRAccess().getArrayElementArrayElementParserRuleCall_2_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__HighestCR__ArrayElementAssignment_2_1"


    // $ANTLR start "rule__HighestCR__CalcCRAssignment_2_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8931:1: rule__HighestCR__CalcCRAssignment_2_2 : ( ruleCalcCR ) ;
    public final void rule__HighestCR__CalcCRAssignment_2_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8935:1: ( ( ruleCalcCR ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8936:1: ( ruleCalcCR )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8936:1: ( ruleCalcCR )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8937:1: ruleCalcCR
            {
             before(grammarAccess.getHighestCRAccess().getCalcCRCalcCRParserRuleCall_2_2_0()); 
            pushFollow(FOLLOW_ruleCalcCR_in_rule__HighestCR__CalcCRAssignment_2_218374);
            ruleCalcCR();

            state._fsp--;

             after(grammarAccess.getHighestCRAccess().getCalcCRCalcCRParserRuleCall_2_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__HighestCR__CalcCRAssignment_2_2"


    // $ANTLR start "rule__FindSimilar__FunctionAssignment_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8946:1: rule__FindSimilar__FunctionAssignment_0 : ( ( 'findSimilar' ) ) ;
    public final void rule__FindSimilar__FunctionAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8950:1: ( ( ( 'findSimilar' ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8951:1: ( ( 'findSimilar' ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8951:1: ( ( 'findSimilar' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8952:1: ( 'findSimilar' )
            {
             before(grammarAccess.getFindSimilarAccess().getFunctionFindSimilarKeyword_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8953:1: ( 'findSimilar' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8954:1: 'findSimilar'
            {
             before(grammarAccess.getFindSimilarAccess().getFunctionFindSimilarKeyword_0_0()); 
            match(input,35,FOLLOW_35_in_rule__FindSimilar__FunctionAssignment_018410); 
             after(grammarAccess.getFindSimilarAccess().getFunctionFindSimilarKeyword_0_0()); 

            }

             after(grammarAccess.getFindSimilarAccess().getFunctionFindSimilarKeyword_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__FunctionAssignment_0"


    // $ANTLR start "rule__FindSimilar__MatrixAssignment_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8969:1: rule__FindSimilar__MatrixAssignment_2 : ( ( RULE_ID ) ) ;
    public final void rule__FindSimilar__MatrixAssignment_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8973:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8974:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8974:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8975:1: ( RULE_ID )
            {
             before(grammarAccess.getFindSimilarAccess().getMatrixArrayCrossReference_2_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8976:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8977:1: RULE_ID
            {
             before(grammarAccess.getFindSimilarAccess().getMatrixArrayIDTerminalRuleCall_2_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__FindSimilar__MatrixAssignment_218453); 
             after(grammarAccess.getFindSimilarAccess().getMatrixArrayIDTerminalRuleCall_2_0_1()); 

            }

             after(grammarAccess.getFindSimilarAccess().getMatrixArrayCrossReference_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__MatrixAssignment_2"


    // $ANTLR start "rule__FindSimilar__IndxIntAssignment_4_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8988:1: rule__FindSimilar__IndxIntAssignment_4_0 : ( RULE_INT ) ;
    public final void rule__FindSimilar__IndxIntAssignment_4_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8992:1: ( ( RULE_INT ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8993:1: ( RULE_INT )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8993:1: ( RULE_INT )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:8994:1: RULE_INT
            {
             before(grammarAccess.getFindSimilarAccess().getIndxIntINTTerminalRuleCall_4_0_0()); 
            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__FindSimilar__IndxIntAssignment_4_018488); 
             after(grammarAccess.getFindSimilarAccess().getIndxIntINTTerminalRuleCall_4_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__IndxIntAssignment_4_0"


    // $ANTLR start "rule__FindSimilar__IndxVarAssignment_4_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9003:1: rule__FindSimilar__IndxVarAssignment_4_1 : ( ( RULE_ID ) ) ;
    public final void rule__FindSimilar__IndxVarAssignment_4_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9007:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9008:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9008:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9009:1: ( RULE_ID )
            {
             before(grammarAccess.getFindSimilarAccess().getIndxVarSimpleVariableCrossReference_4_1_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9010:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9011:1: RULE_ID
            {
             before(grammarAccess.getFindSimilarAccess().getIndxVarSimpleVariableIDTerminalRuleCall_4_1_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__FindSimilar__IndxVarAssignment_4_118523); 
             after(grammarAccess.getFindSimilarAccess().getIndxVarSimpleVariableIDTerminalRuleCall_4_1_0_1()); 

            }

             after(grammarAccess.getFindSimilarAccess().getIndxVarSimpleVariableCrossReference_4_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__IndxVarAssignment_4_1"


    // $ANTLR start "rule__FindSimilar__IndxAEAssignment_4_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9022:1: rule__FindSimilar__IndxAEAssignment_4_2 : ( ruleArrayElement ) ;
    public final void rule__FindSimilar__IndxAEAssignment_4_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9026:1: ( ( ruleArrayElement ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9027:1: ( ruleArrayElement )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9027:1: ( ruleArrayElement )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9028:1: ruleArrayElement
            {
             before(grammarAccess.getFindSimilarAccess().getIndxAEArrayElementParserRuleCall_4_2_0()); 
            pushFollow(FOLLOW_ruleArrayElement_in_rule__FindSimilar__IndxAEAssignment_4_218558);
            ruleArrayElement();

            state._fsp--;

             after(grammarAccess.getFindSimilarAccess().getIndxAEArrayElementParserRuleCall_4_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__IndxAEAssignment_4_2"


    // $ANTLR start "rule__FindSimilar__SimilarityNumAssignment_6_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9037:1: rule__FindSimilar__SimilarityNumAssignment_6_0 : ( ruleNumber ) ;
    public final void rule__FindSimilar__SimilarityNumAssignment_6_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9041:1: ( ( ruleNumber ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9042:1: ( ruleNumber )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9042:1: ( ruleNumber )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9043:1: ruleNumber
            {
             before(grammarAccess.getFindSimilarAccess().getSimilarityNumNumberParserRuleCall_6_0_0()); 
            pushFollow(FOLLOW_ruleNumber_in_rule__FindSimilar__SimilarityNumAssignment_6_018589);
            ruleNumber();

            state._fsp--;

             after(grammarAccess.getFindSimilarAccess().getSimilarityNumNumberParserRuleCall_6_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__SimilarityNumAssignment_6_0"


    // $ANTLR start "rule__FindSimilar__SimilarityVarAssignment_6_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9052:1: rule__FindSimilar__SimilarityVarAssignment_6_1 : ( ( RULE_ID ) ) ;
    public final void rule__FindSimilar__SimilarityVarAssignment_6_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9056:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9057:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9057:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9058:1: ( RULE_ID )
            {
             before(grammarAccess.getFindSimilarAccess().getSimilarityVarSimpleVariableCrossReference_6_1_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9059:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9060:1: RULE_ID
            {
             before(grammarAccess.getFindSimilarAccess().getSimilarityVarSimpleVariableIDTerminalRuleCall_6_1_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__FindSimilar__SimilarityVarAssignment_6_118624); 
             after(grammarAccess.getFindSimilarAccess().getSimilarityVarSimpleVariableIDTerminalRuleCall_6_1_0_1()); 

            }

             after(grammarAccess.getFindSimilarAccess().getSimilarityVarSimpleVariableCrossReference_6_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__SimilarityVarAssignment_6_1"


    // $ANTLR start "rule__FindSimilar__SimilarityAEAssignment_6_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9071:1: rule__FindSimilar__SimilarityAEAssignment_6_2 : ( ruleArrayElement ) ;
    public final void rule__FindSimilar__SimilarityAEAssignment_6_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9075:1: ( ( ruleArrayElement ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9076:1: ( ruleArrayElement )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9076:1: ( ruleArrayElement )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9077:1: ruleArrayElement
            {
             before(grammarAccess.getFindSimilarAccess().getSimilarityAEArrayElementParserRuleCall_6_2_0()); 
            pushFollow(FOLLOW_ruleArrayElement_in_rule__FindSimilar__SimilarityAEAssignment_6_218659);
            ruleArrayElement();

            state._fsp--;

             after(grammarAccess.getFindSimilarAccess().getSimilarityAEArrayElementParserRuleCall_6_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__SimilarityAEAssignment_6_2"


    // $ANTLR start "rule__FindSimilar__SimilarityCalcCRAssignment_6_3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9086:1: rule__FindSimilar__SimilarityCalcCRAssignment_6_3 : ( ruleCalcCR ) ;
    public final void rule__FindSimilar__SimilarityCalcCRAssignment_6_3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9090:1: ( ( ruleCalcCR ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9091:1: ( ruleCalcCR )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9091:1: ( ruleCalcCR )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9092:1: ruleCalcCR
            {
             before(grammarAccess.getFindSimilarAccess().getSimilarityCalcCRCalcCRParserRuleCall_6_3_0()); 
            pushFollow(FOLLOW_ruleCalcCR_in_rule__FindSimilar__SimilarityCalcCRAssignment_6_318690);
            ruleCalcCR();

            state._fsp--;

             after(grammarAccess.getFindSimilarAccess().getSimilarityCalcCRCalcCRParserRuleCall_6_3_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__SimilarityCalcCRAssignment_6_3"


    // $ANTLR start "rule__FindSimilar__SimilarityCalcMeanAssignment_6_4"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9101:1: rule__FindSimilar__SimilarityCalcMeanAssignment_6_4 : ( ruleCalcMean ) ;
    public final void rule__FindSimilar__SimilarityCalcMeanAssignment_6_4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9105:1: ( ( ruleCalcMean ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9106:1: ( ruleCalcMean )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9106:1: ( ruleCalcMean )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9107:1: ruleCalcMean
            {
             before(grammarAccess.getFindSimilarAccess().getSimilarityCalcMeanCalcMeanParserRuleCall_6_4_0()); 
            pushFollow(FOLLOW_ruleCalcMean_in_rule__FindSimilar__SimilarityCalcMeanAssignment_6_418721);
            ruleCalcMean();

            state._fsp--;

             after(grammarAccess.getFindSimilarAccess().getSimilarityCalcMeanCalcMeanParserRuleCall_6_4_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__FindSimilar__SimilarityCalcMeanAssignment_6_4"


    // $ANTLR start "rule__SimpleVariable__NameAssignment"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9119:1: rule__SimpleVariable__NameAssignment : ( RULE_ID ) ;
    public final void rule__SimpleVariable__NameAssignment() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9123:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9124:1: ( RULE_ID )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9124:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9125:1: RULE_ID
            {
             before(grammarAccess.getSimpleVariableAccess().getNameIDTerminalRuleCall_0()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__SimpleVariable__NameAssignment18755); 
             after(grammarAccess.getSimpleVariableAccess().getNameIDTerminalRuleCall_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__SimpleVariable__NameAssignment"


    // $ANTLR start "rule__Array__NameAssignment"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9134:1: rule__Array__NameAssignment : ( RULE_ID ) ;
    public final void rule__Array__NameAssignment() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9138:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9139:1: ( RULE_ID )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9139:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9140:1: RULE_ID
            {
             before(grammarAccess.getArrayAccess().getNameIDTerminalRuleCall_0()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Array__NameAssignment18786); 
             after(grammarAccess.getArrayAccess().getNameIDTerminalRuleCall_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Array__NameAssignment"


    // $ANTLR start "rule__Number__IntegerAssignment_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9149:1: rule__Number__IntegerAssignment_0 : ( RULE_INT ) ;
    public final void rule__Number__IntegerAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9153:1: ( ( RULE_INT ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9154:1: ( RULE_INT )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9154:1: ( RULE_INT )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9155:1: RULE_INT
            {
             before(grammarAccess.getNumberAccess().getIntegerINTTerminalRuleCall_0_0()); 
            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__Number__IntegerAssignment_018817); 
             after(grammarAccess.getNumberAccess().getIntegerINTTerminalRuleCall_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Number__IntegerAssignment_0"


    // $ANTLR start "rule__Number__DecimalAssignment_1_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9164:1: rule__Number__DecimalAssignment_1_1 : ( RULE_INT ) ;
    public final void rule__Number__DecimalAssignment_1_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9168:1: ( ( RULE_INT ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9169:1: ( RULE_INT )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9169:1: ( RULE_INT )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9170:1: RULE_INT
            {
             before(grammarAccess.getNumberAccess().getDecimalINTTerminalRuleCall_1_1_0()); 
            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__Number__DecimalAssignment_1_118848); 
             after(grammarAccess.getNumberAccess().getDecimalINTTerminalRuleCall_1_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Number__DecimalAssignment_1_1"


    // $ANTLR start "rule__Folder__LinuxFolderAssignment_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9179:1: rule__Folder__LinuxFolderAssignment_0 : ( ruleLinuxFolder ) ;
    public final void rule__Folder__LinuxFolderAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9183:1: ( ( ruleLinuxFolder ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9184:1: ( ruleLinuxFolder )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9184:1: ( ruleLinuxFolder )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9185:1: ruleLinuxFolder
            {
             before(grammarAccess.getFolderAccess().getLinuxFolderLinuxFolderParserRuleCall_0_0()); 
            pushFollow(FOLLOW_ruleLinuxFolder_in_rule__Folder__LinuxFolderAssignment_018879);
            ruleLinuxFolder();

            state._fsp--;

             after(grammarAccess.getFolderAccess().getLinuxFolderLinuxFolderParserRuleCall_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Folder__LinuxFolderAssignment_0"


    // $ANTLR start "rule__Folder__WindowsFolderAssignment_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9194:1: rule__Folder__WindowsFolderAssignment_1 : ( ruleWindowsFolder ) ;
    public final void rule__Folder__WindowsFolderAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9198:1: ( ( ruleWindowsFolder ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9199:1: ( ruleWindowsFolder )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9199:1: ( ruleWindowsFolder )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9200:1: ruleWindowsFolder
            {
             before(grammarAccess.getFolderAccess().getWindowsFolderWindowsFolderParserRuleCall_1_0()); 
            pushFollow(FOLLOW_ruleWindowsFolder_in_rule__Folder__WindowsFolderAssignment_118910);
            ruleWindowsFolder();

            state._fsp--;

             after(grammarAccess.getFolderAccess().getWindowsFolderWindowsFolderParserRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Folder__WindowsFolderAssignment_1"


    // $ANTLR start "rule__Archive__FolderAssignment_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9209:1: rule__Archive__FolderAssignment_0 : ( ruleFolder ) ;
    public final void rule__Archive__FolderAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9213:1: ( ( ruleFolder ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9214:1: ( ruleFolder )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9214:1: ( ruleFolder )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9215:1: ruleFolder
            {
             before(grammarAccess.getArchiveAccess().getFolderFolderParserRuleCall_0_0()); 
            pushFollow(FOLLOW_ruleFolder_in_rule__Archive__FolderAssignment_018941);
            ruleFolder();

            state._fsp--;

             after(grammarAccess.getArchiveAccess().getFolderFolderParserRuleCall_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Archive__FolderAssignment_0"


    // $ANTLR start "rule__Archive__ArqAssignment_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9224:1: rule__Archive__ArqAssignment_1 : ( RULE_ID ) ;
    public final void rule__Archive__ArqAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9228:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9229:1: ( RULE_ID )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9229:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9230:1: RULE_ID
            {
             before(grammarAccess.getArchiveAccess().getArqIDTerminalRuleCall_1_0()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Archive__ArqAssignment_118972); 
             after(grammarAccess.getArchiveAccess().getArqIDTerminalRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Archive__ArqAssignment_1"


    // $ANTLR start "rule__Archive__ArqAssignment_2"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9239:1: rule__Archive__ArqAssignment_2 : ( ( '.' ) ) ;
    public final void rule__Archive__ArqAssignment_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9243:1: ( ( ( '.' ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9244:1: ( ( '.' ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9244:1: ( ( '.' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9245:1: ( '.' )
            {
             before(grammarAccess.getArchiveAccess().getArqFullStopKeyword_2_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9246:1: ( '.' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9247:1: '.'
            {
             before(grammarAccess.getArchiveAccess().getArqFullStopKeyword_2_0()); 
            match(input,18,FOLLOW_18_in_rule__Archive__ArqAssignment_219008); 
             after(grammarAccess.getArchiveAccess().getArqFullStopKeyword_2_0()); 

            }

             after(grammarAccess.getArchiveAccess().getArqFullStopKeyword_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Archive__ArqAssignment_2"


    // $ANTLR start "rule__Archive__ArqAssignment_3"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9262:1: rule__Archive__ArqAssignment_3 : ( ( 'clu' ) ) ;
    public final void rule__Archive__ArqAssignment_3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9266:1: ( ( ( 'clu' ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9267:1: ( ( 'clu' ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9267:1: ( ( 'clu' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9268:1: ( 'clu' )
            {
             before(grammarAccess.getArchiveAccess().getArqCluKeyword_3_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9269:1: ( 'clu' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9270:1: 'clu'
            {
             before(grammarAccess.getArchiveAccess().getArqCluKeyword_3_0()); 
            match(input,36,FOLLOW_36_in_rule__Archive__ArqAssignment_319052); 
             after(grammarAccess.getArchiveAccess().getArqCluKeyword_3_0()); 

            }

             after(grammarAccess.getArchiveAccess().getArqCluKeyword_3_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Archive__ArqAssignment_3"


    // $ANTLR start "rule__LinuxFolder__UnixFolderAssignment_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9285:1: rule__LinuxFolder__UnixFolderAssignment_0 : ( ( '/' ) ) ;
    public final void rule__LinuxFolder__UnixFolderAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9289:1: ( ( ( '/' ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9290:1: ( ( '/' ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9290:1: ( ( '/' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9291:1: ( '/' )
            {
             before(grammarAccess.getLinuxFolderAccess().getUnixFolderSolidusKeyword_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9292:1: ( '/' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9293:1: '/'
            {
             before(grammarAccess.getLinuxFolderAccess().getUnixFolderSolidusKeyword_0_0()); 
            match(input,37,FOLLOW_37_in_rule__LinuxFolder__UnixFolderAssignment_019096); 
             after(grammarAccess.getLinuxFolderAccess().getUnixFolderSolidusKeyword_0_0()); 

            }

             after(grammarAccess.getLinuxFolderAccess().getUnixFolderSolidusKeyword_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__LinuxFolder__UnixFolderAssignment_0"


    // $ANTLR start "rule__LinuxFolder__UnixFolderAssignment_1_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9308:1: rule__LinuxFolder__UnixFolderAssignment_1_0 : ( RULE_ID ) ;
    public final void rule__LinuxFolder__UnixFolderAssignment_1_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9312:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9313:1: ( RULE_ID )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9313:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9314:1: RULE_ID
            {
             before(grammarAccess.getLinuxFolderAccess().getUnixFolderIDTerminalRuleCall_1_0_0()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__LinuxFolder__UnixFolderAssignment_1_019135); 
             after(grammarAccess.getLinuxFolderAccess().getUnixFolderIDTerminalRuleCall_1_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__LinuxFolder__UnixFolderAssignment_1_0"


    // $ANTLR start "rule__LinuxFolder__UnixFolderAssignment_1_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9323:1: rule__LinuxFolder__UnixFolderAssignment_1_1 : ( ( '/' ) ) ;
    public final void rule__LinuxFolder__UnixFolderAssignment_1_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9327:1: ( ( ( '/' ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9328:1: ( ( '/' ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9328:1: ( ( '/' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9329:1: ( '/' )
            {
             before(grammarAccess.getLinuxFolderAccess().getUnixFolderSolidusKeyword_1_1_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9330:1: ( '/' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9331:1: '/'
            {
             before(grammarAccess.getLinuxFolderAccess().getUnixFolderSolidusKeyword_1_1_0()); 
            match(input,37,FOLLOW_37_in_rule__LinuxFolder__UnixFolderAssignment_1_119171); 
             after(grammarAccess.getLinuxFolderAccess().getUnixFolderSolidusKeyword_1_1_0()); 

            }

             after(grammarAccess.getLinuxFolderAccess().getUnixFolderSolidusKeyword_1_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__LinuxFolder__UnixFolderAssignment_1_1"


    // $ANTLR start "rule__WindowsFolder__WindowsFolderAssignment_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9346:1: rule__WindowsFolder__WindowsFolderAssignment_0 : ( RULE_ID ) ;
    public final void rule__WindowsFolder__WindowsFolderAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9350:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9351:1: ( RULE_ID )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9351:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9352:1: RULE_ID
            {
             before(grammarAccess.getWindowsFolderAccess().getWindowsFolderIDTerminalRuleCall_0_0()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__WindowsFolder__WindowsFolderAssignment_019210); 
             after(grammarAccess.getWindowsFolderAccess().getWindowsFolderIDTerminalRuleCall_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__WindowsFolder__WindowsFolderAssignment_0"


    // $ANTLR start "rule__WindowsFolder__WindowsFolderAssignment_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9361:1: rule__WindowsFolder__WindowsFolderAssignment_1 : ( ( ':/' ) ) ;
    public final void rule__WindowsFolder__WindowsFolderAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9365:1: ( ( ( ':/' ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9366:1: ( ( ':/' ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9366:1: ( ( ':/' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9367:1: ( ':/' )
            {
             before(grammarAccess.getWindowsFolderAccess().getWindowsFolderColonSolidusKeyword_1_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9368:1: ( ':/' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9369:1: ':/'
            {
             before(grammarAccess.getWindowsFolderAccess().getWindowsFolderColonSolidusKeyword_1_0()); 
            match(input,38,FOLLOW_38_in_rule__WindowsFolder__WindowsFolderAssignment_119246); 
             after(grammarAccess.getWindowsFolderAccess().getWindowsFolderColonSolidusKeyword_1_0()); 

            }

             after(grammarAccess.getWindowsFolderAccess().getWindowsFolderColonSolidusKeyword_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__WindowsFolder__WindowsFolderAssignment_1"


    // $ANTLR start "rule__WindowsFolder__WindowsFolderAssignment_2_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9384:1: rule__WindowsFolder__WindowsFolderAssignment_2_0 : ( RULE_ID ) ;
    public final void rule__WindowsFolder__WindowsFolderAssignment_2_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9388:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9389:1: ( RULE_ID )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9389:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9390:1: RULE_ID
            {
             before(grammarAccess.getWindowsFolderAccess().getWindowsFolderIDTerminalRuleCall_2_0_0()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__WindowsFolder__WindowsFolderAssignment_2_019285); 
             after(grammarAccess.getWindowsFolderAccess().getWindowsFolderIDTerminalRuleCall_2_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__WindowsFolder__WindowsFolderAssignment_2_0"


    // $ANTLR start "rule__WindowsFolder__WindowsFolderAssignment_2_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9399:1: rule__WindowsFolder__WindowsFolderAssignment_2_1 : ( ( '/' ) ) ;
    public final void rule__WindowsFolder__WindowsFolderAssignment_2_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9403:1: ( ( ( '/' ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9404:1: ( ( '/' ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9404:1: ( ( '/' ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9405:1: ( '/' )
            {
             before(grammarAccess.getWindowsFolderAccess().getWindowsFolderSolidusKeyword_2_1_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9406:1: ( '/' )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9407:1: '/'
            {
             before(grammarAccess.getWindowsFolderAccess().getWindowsFolderSolidusKeyword_2_1_0()); 
            match(input,37,FOLLOW_37_in_rule__WindowsFolder__WindowsFolderAssignment_2_119321); 
             after(grammarAccess.getWindowsFolderAccess().getWindowsFolderSolidusKeyword_2_1_0()); 

            }

             after(grammarAccess.getWindowsFolderAccess().getWindowsFolderSolidusKeyword_2_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__WindowsFolder__WindowsFolderAssignment_2_1"


    // $ANTLR start "rule__ArrayElement__ArrayAssignment_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9422:1: rule__ArrayElement__ArrayAssignment_0 : ( ( RULE_ID ) ) ;
    public final void rule__ArrayElement__ArrayAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9426:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9427:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9427:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9428:1: ( RULE_ID )
            {
             before(grammarAccess.getArrayElementAccess().getArrayArrayCrossReference_0_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9429:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9430:1: RULE_ID
            {
             before(grammarAccess.getArrayElementAccess().getArrayArrayIDTerminalRuleCall_0_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__ArrayElement__ArrayAssignment_019364); 
             after(grammarAccess.getArrayElementAccess().getArrayArrayIDTerminalRuleCall_0_0_1()); 

            }

             after(grammarAccess.getArrayElementAccess().getArrayArrayCrossReference_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayElement__ArrayAssignment_0"


    // $ANTLR start "rule__ArrayElement__IdxAssignment_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9441:1: rule__ArrayElement__IdxAssignment_1 : ( ruleIndex ) ;
    public final void rule__ArrayElement__IdxAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9445:1: ( ( ruleIndex ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9446:1: ( ruleIndex )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9446:1: ( ruleIndex )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9447:1: ruleIndex
            {
             before(grammarAccess.getArrayElementAccess().getIdxIndexParserRuleCall_1_0()); 
            pushFollow(FOLLOW_ruleIndex_in_rule__ArrayElement__IdxAssignment_119399);
            ruleIndex();

            state._fsp--;

             after(grammarAccess.getArrayElementAccess().getIdxIndexParserRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__ArrayElement__IdxAssignment_1"


    // $ANTLR start "rule__Index__Param1Assignment_1_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9456:1: rule__Index__Param1Assignment_1_0 : ( RULE_INT ) ;
    public final void rule__Index__Param1Assignment_1_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9460:1: ( ( RULE_INT ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9461:1: ( RULE_INT )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9461:1: ( RULE_INT )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9462:1: RULE_INT
            {
             before(grammarAccess.getIndexAccess().getParam1INTTerminalRuleCall_1_0_0()); 
            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__Index__Param1Assignment_1_019430); 
             after(grammarAccess.getIndexAccess().getParam1INTTerminalRuleCall_1_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Index__Param1Assignment_1_0"


    // $ANTLR start "rule__Index__Var1Assignment_1_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9471:1: rule__Index__Var1Assignment_1_1 : ( ( RULE_ID ) ) ;
    public final void rule__Index__Var1Assignment_1_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9475:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9476:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9476:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9477:1: ( RULE_ID )
            {
             before(grammarAccess.getIndexAccess().getVar1SimpleVariableCrossReference_1_1_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9478:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9479:1: RULE_ID
            {
             before(grammarAccess.getIndexAccess().getVar1SimpleVariableIDTerminalRuleCall_1_1_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Index__Var1Assignment_1_119465); 
             after(grammarAccess.getIndexAccess().getVar1SimpleVariableIDTerminalRuleCall_1_1_0_1()); 

            }

             after(grammarAccess.getIndexAccess().getVar1SimpleVariableCrossReference_1_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Index__Var1Assignment_1_1"


    // $ANTLR start "rule__Index__Param2Assignment_2_1_0"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9490:1: rule__Index__Param2Assignment_2_1_0 : ( RULE_INT ) ;
    public final void rule__Index__Param2Assignment_2_1_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9494:1: ( ( RULE_INT ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9495:1: ( RULE_INT )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9495:1: ( RULE_INT )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9496:1: RULE_INT
            {
             before(grammarAccess.getIndexAccess().getParam2INTTerminalRuleCall_2_1_0_0()); 
            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__Index__Param2Assignment_2_1_019500); 
             after(grammarAccess.getIndexAccess().getParam2INTTerminalRuleCall_2_1_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Index__Param2Assignment_2_1_0"


    // $ANTLR start "rule__Index__Var2Assignment_2_1_1"
    // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9505:1: rule__Index__Var2Assignment_2_1_1 : ( ( RULE_ID ) ) ;
    public final void rule__Index__Var2Assignment_2_1_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9509:1: ( ( ( RULE_ID ) ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9510:1: ( ( RULE_ID ) )
            {
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9510:1: ( ( RULE_ID ) )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9511:1: ( RULE_ID )
            {
             before(grammarAccess.getIndexAccess().getVar2SimpleVariableCrossReference_2_1_1_0()); 
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9512:1: ( RULE_ID )
            // ../org.xtext.example.cr.ui/src-gen/org/xtext/example/cr/ui/contentassist/antlr/internal/InternalCR.g:9513:1: RULE_ID
            {
             before(grammarAccess.getIndexAccess().getVar2SimpleVariableIDTerminalRuleCall_2_1_1_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Index__Var2Assignment_2_1_119535); 
             after(grammarAccess.getIndexAccess().getVar2SimpleVariableIDTerminalRuleCall_2_1_1_0_1()); 

            }

             after(grammarAccess.getIndexAccess().getVar2SimpleVariableCrossReference_2_1_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Index__Var2Assignment_2_1_1"

    // Delegated rules


    protected DFA2 dfa2 = new DFA2(this);
    protected DFA8 dfa8 = new DFA8(this);
    protected DFA11 dfa11 = new DFA11(this);
    protected DFA12 dfa12 = new DFA12(this);
    protected DFA13 dfa13 = new DFA13(this);
    protected DFA15 dfa15 = new DFA15(this);
    protected DFA16 dfa16 = new DFA16(this);
    protected DFA26 dfa26 = new DFA26(this);
    protected DFA27 dfa27 = new DFA27(this);
    protected DFA29 dfa29 = new DFA29(this);
    static final String DFA2_eotS =
        "\45\uffff";
    static final String DFA2_eofS =
        "\7\uffff\3\17\13\uffff\3\17\12\uffff\1\17\1\uffff\1\17";
    static final String DFA2_minS =
        "\4\5\1\17\1\16\1\uffff\3\5\1\4\2\uffff\1\4\1\5\1\uffff\2\5\3\16"+
        "\3\5\1\4\1\13\1\4\1\21\1\20\3\5\2\30\3\5";
    static final String DFA2_maxS =
        "\1\43\3\5\1\17\1\27\1\uffff\3\43\1\4\2\uffff\2\5\1\uffff\2\5\1"+
        "\20\2\30\3\43\1\4\1\15\1\5\1\22\1\20\3\5\2\30\1\43\1\5\1\43";
    static final String DFA2_acceptS =
        "\6\uffff\1\4\4\uffff\1\3\1\2\2\uffff\1\1\25\uffff";
    static final String DFA2_specialS =
        "\45\uffff}>";
    static final String[] DFA2_transitionS = {
            "\1\5\5\uffff\1\1\1\2\1\3\13\uffff\1\4\3\uffff\7\6",
            "\1\7",
            "\1\10",
            "\1\11",
            "\1\12",
            "\1\14\2\uffff\1\14\1\13\4\uffff\1\15",
            "",
            "\1\17\5\uffff\3\17\1\16\2\uffff\1\14\4\uffff\1\17\2\uffff"+
            "\1\17\3\uffff\7\17",
            "\1\17\5\uffff\3\17\1\20\2\uffff\1\14\4\uffff\1\17\2\uffff"+
            "\1\17\3\uffff\7\17",
            "\1\17\5\uffff\3\17\1\21\2\uffff\1\14\4\uffff\1\17\2\uffff"+
            "\1\17\3\uffff\7\17",
            "\1\22",
            "",
            "",
            "\1\23\1\24",
            "\1\25",
            "",
            "\1\26",
            "\1\27",
            "\1\30\1\uffff\1\31",
            "\1\32\11\uffff\1\33",
            "\1\32\11\uffff\1\33",
            "\1\17\5\uffff\3\17\1\16\2\uffff\1\14\4\uffff\1\17\2\uffff"+
            "\1\17\3\uffff\7\17",
            "\1\17\5\uffff\3\17\1\20\2\uffff\1\14\4\uffff\1\17\2\uffff"+
            "\1\17\3\uffff\7\17",
            "\1\17\5\uffff\3\17\1\21\2\uffff\1\14\4\uffff\1\17\2\uffff"+
            "\1\17\3\uffff\7\17",
            "\1\34",
            "\1\35\1\36\1\37",
            "\1\40\1\41",
            "\1\14\1\13",
            "\1\31",
            "\1\42",
            "\1\42",
            "\1\42",
            "\1\33",
            "\1\33",
            "\1\17\5\uffff\3\17\1\43\2\uffff\1\14\4\uffff\1\17\2\uffff"+
            "\1\17\3\uffff\7\17",
            "\1\44",
            "\1\17\5\uffff\3\17\1\43\2\uffff\1\14\4\uffff\1\17\2\uffff"+
            "\1\17\3\uffff\7\17"
    };

    static final short[] DFA2_eot = DFA.unpackEncodedString(DFA2_eotS);
    static final short[] DFA2_eof = DFA.unpackEncodedString(DFA2_eofS);
    static final char[] DFA2_min = DFA.unpackEncodedStringToUnsignedChars(DFA2_minS);
    static final char[] DFA2_max = DFA.unpackEncodedStringToUnsignedChars(DFA2_maxS);
    static final short[] DFA2_accept = DFA.unpackEncodedString(DFA2_acceptS);
    static final short[] DFA2_special = DFA.unpackEncodedString(DFA2_specialS);
    static final short[][] DFA2_transition;

    static {
        int numStates = DFA2_transitionS.length;
        DFA2_transition = new short[numStates][];
        for (int i=0; i<numStates; i++) {
            DFA2_transition[i] = DFA.unpackEncodedString(DFA2_transitionS[i]);
        }
    }

    class DFA2 extends DFA {

        public DFA2(BaseRecognizer recognizer) {
            this.recognizer = recognizer;
            this.decisionNumber = 2;
            this.eot = DFA2_eot;
            this.eof = DFA2_eof;
            this.min = DFA2_min;
            this.max = DFA2_max;
            this.accept = DFA2_accept;
            this.special = DFA2_special;
            this.transition = DFA2_transition;
        }
        public String getDescription() {
            return "958:1: rule__Element__Alternatives : ( ( ( rule__Element__VarDecAssignment_0 ) ) | ( ( rule__Element__AssignmentAssignment_1 ) ) | ( ( rule__Element__ArrayMethodAssignment_2 ) ) | ( ( rule__Element__FunctionAssignment_3 ) ) );";
        }
    }
    static final String DFA8_eotS =
        "\15\uffff";
    static final String DFA8_eofS =
        "\15\uffff";
    static final String DFA8_minS =
        "\1\5\1\22\1\32\1\4\3\uffff\2\16\1\4\1\22\2\30";
    static final String DFA8_maxS =
        "\1\5\1\27\1\34\1\5\3\uffff\2\30\1\5\1\22\2\30";
    static final String DFA8_acceptS =
        "\4\uffff\1\1\1\3\1\2\6\uffff";
    static final String DFA8_specialS =
        "\15\uffff}>";
    static final String[] DFA8_transitionS = {
            "\1\1",
            "\1\2\4\uffff\1\3",
            "\1\4\1\6\1\5",
            "\1\7\1\10",
            "",
            "",
            "",
            "\1\11\11\uffff\1\12",
            "\1\11\11\uffff\1\12",
            "\1\13\1\14",
            "\1\2",
            "\1\12",
            "\1\12"
    };

    static final short[] DFA8_eot = DFA.unpackEncodedString(DFA8_eotS);
    static final short[] DFA8_eof = DFA.unpackEncodedString(DFA8_eofS);
    static final char[] DFA8_min = DFA.unpackEncodedStringToUnsignedChars(DFA8_minS);
    static final char[] DFA8_max = DFA.unpackEncodedStringToUnsignedChars(DFA8_maxS);
    static final short[] DFA8_accept = DFA.unpackEncodedString(DFA8_acceptS);
    static final short[] DFA8_special = DFA.unpackEncodedString(DFA8_specialS);
    static final short[][] DFA8_transition;

    static {
        int numStates = DFA8_transitionS.length;
        DFA8_transition = new short[numStates][];
        for (int i=0; i<numStates; i++) {
            DFA8_transition[i] = DFA.unpackEncodedString(DFA8_transitionS[i]);
        }
    }

    class DFA8 extends DFA {

        public DFA8(BaseRecognizer recognizer) {
            this.recognizer = recognizer;
            this.decisionNumber = 8;
            this.eot = DFA8_eot;
            this.eof = DFA8_eof;
            this.min = DFA8_min;
            this.max = DFA8_max;
            this.accept = DFA8_accept;
            this.special = DFA8_special;
            this.transition = DFA8_transition;
        }
        public String getDescription() {
            return "1150:1: rule__ArrayMethod__Alternatives : ( ( ( rule__ArrayMethod__SizeAssignment_0 ) ) | ( ( rule__ArrayMethod__AddAssignment_1 ) ) | ( ( rule__ArrayMethod__DeleteAssignment_2 ) ) );";
        }
    }
    static final String DFA11_eotS =
        "\21\uffff";
    static final String DFA11_eofS =
        "\21\uffff";
    static final String DFA11_minS =
        "\1\4\1\uffff\1\16\4\uffff\1\4\1\32\2\16\1\uffff\1\4\1\16\2\30\1"+
        "\uffff";
    static final String DFA11_maxS =
        "\1\45\1\uffff\1\46\4\uffff\1\5\1\44\2\30\1\uffff\1\5\1\22\2\30"+
        "\1\uffff";
    static final String DFA11_acceptS =
        "\1\uffff\1\1\1\uffff\1\4\1\6\1\7\1\2\4\uffff\1\5\4\uffff\1\3";
    static final String DFA11_specialS =
        "\21\uffff}>";
    static final String[] DFA11_transitionS = {
            "\1\1\1\2\32\uffff\1\4\1\5\3\uffff\1\3",
            "",
            "\1\6\1\uffff\1\6\1\uffff\1\10\4\uffff\1\7\16\uffff\1\3",
            "",
            "",
            "",
            "",
            "\1\11\1\12",
            "\1\13\11\uffff\1\3",
            "\1\14\11\uffff\1\15",
            "\1\14\11\uffff\1\15",
            "",
            "\1\16\1\17",
            "\1\20\1\uffff\1\20\1\uffff\1\13",
            "\1\15",
            "\1\15",
            ""
    };

    static final short[] DFA11_eot = DFA.unpackEncodedString(DFA11_eotS);
    static final short[] DFA11_eof = DFA.unpackEncodedString(DFA11_eofS);
    static final char[] DFA11_min = DFA.unpackEncodedStringToUnsignedChars(DFA11_minS);
    static final char[] DFA11_max = DFA.unpackEncodedStringToUnsignedChars(DFA11_maxS);
    static final short[] DFA11_accept = DFA.unpackEncodedString(DFA11_acceptS);
    static final short[] DFA11_special = DFA.unpackEncodedString(DFA11_specialS);
    static final short[][] DFA11_transition;

    static {
        int numStates = DFA11_transitionS.length;
        DFA11_transition = new short[numStates][];
        for (int i=0; i<numStates; i++) {
            DFA11_transition[i] = DFA.unpackEncodedString(DFA11_transitionS[i]);
        }
    }

    class DFA11 extends DFA {

        public DFA11(BaseRecognizer recognizer) {
            this.recognizer = recognizer;
            this.decisionNumber = 11;
            this.eot = DFA11_eot;
            this.eof = DFA11_eof;
            this.min = DFA11_min;
            this.max = DFA11_max;
            this.accept = DFA11_accept;
            this.special = DFA11_special;
            this.transition = DFA11_transition;
        }
        public String getDescription() {
            return "1222:1: rule__Add__Alternatives_4 : ( ( ( rule__Add__NumParamsAssignment_4_0 ) ) | ( ( rule__Add__VarParamsAssignment_4_1 ) ) | ( ( rule__Add__AeParamsAssignment_4_2 ) ) | ( ( rule__Add__ArchiveAssignment_4_3 ) ) | ( ( rule__Add__SizesAssignment_4_4 ) ) | ( ( rule__Add__CalcCRsAssignment_4_5 ) ) | ( ( rule__Add__CalcMeansAssignment_4_6 ) ) );";
        }
    }
    static final String DFA12_eotS =
        "\21\uffff";
    static final String DFA12_eofS =
        "\21\uffff";
    static final String DFA12_minS =
        "\1\4\1\uffff\1\16\3\uffff\1\4\1\uffff\1\32\2\16\1\uffff\1\4\1\16"+
        "\2\30\1\uffff";
    static final String DFA12_maxS =
        "\1\45\1\uffff\1\46\3\uffff\1\5\1\uffff\1\44\2\30\1\uffff\1\5\1"+
        "\22\2\30\1\uffff";
    static final String DFA12_acceptS =
        "\1\uffff\1\1\1\uffff\1\4\1\6\1\7\1\uffff\1\2\3\uffff\1\5\4\uffff"+
        "\1\3";
    static final String DFA12_specialS =
        "\21\uffff}>";
    static final String[] DFA12_transitionS = {
            "\1\1\1\2\32\uffff\1\4\1\5\3\uffff\1\3",
            "",
            "\1\7\1\uffff\1\7\1\uffff\1\10\4\uffff\1\6\16\uffff\1\3",
            "",
            "",
            "",
            "\1\11\1\12",
            "",
            "\1\13\11\uffff\1\3",
            "\1\14\11\uffff\1\15",
            "\1\14\11\uffff\1\15",
            "",
            "\1\16\1\17",
            "\1\20\1\uffff\1\20\1\uffff\1\13",
            "\1\15",
            "\1\15",
            ""
    };

    static final short[] DFA12_eot = DFA.unpackEncodedString(DFA12_eotS);
    static final short[] DFA12_eof = DFA.unpackEncodedString(DFA12_eofS);
    static final char[] DFA12_min = DFA.unpackEncodedStringToUnsignedChars(DFA12_minS);
    static final char[] DFA12_max = DFA.unpackEncodedStringToUnsignedChars(DFA12_maxS);
    static final short[] DFA12_accept = DFA.unpackEncodedString(DFA12_acceptS);
    static final short[] DFA12_special = DFA.unpackEncodedString(DFA12_specialS);
    static final short[][] DFA12_transition;

    static {
        int numStates = DFA12_transitionS.length;
        DFA12_transition = new short[numStates][];
        for (int i=0; i<numStates; i++) {
            DFA12_transition[i] = DFA.unpackEncodedString(DFA12_transitionS[i]);
        }
    }

    class DFA12 extends DFA {

        public DFA12(BaseRecognizer recognizer) {
            this.recognizer = recognizer;
            this.decisionNumber = 12;
            this.eot = DFA12_eot;
            this.eof = DFA12_eof;
            this.min = DFA12_min;
            this.max = DFA12_max;
            this.accept = DFA12_accept;
            this.special = DFA12_special;
            this.transition = DFA12_transition;
        }
        public String getDescription() {
            return "1274:1: rule__Add__Alternatives_5_1 : ( ( ( rule__Add__NumParamsAssignment_5_1_0 ) ) | ( ( rule__Add__VarParamsAssignment_5_1_1 ) ) | ( ( rule__Add__AeParamsAssignment_5_1_2 ) ) | ( ( rule__Add__ArchiveAssignment_5_1_3 ) ) | ( ( rule__Add__SizesAssignment_5_1_4 ) ) | ( ( rule__Add__CalcCRsAssignment_5_1_5 ) ) | ( ( rule__Add__CalcMeansAssignment_5_1_6 ) ) );";
        }
    }
    static final String DFA13_eotS =
        "\16\uffff";
    static final String DFA13_eofS =
        "\16\uffff";
    static final String DFA13_minS =
        "\1\5\1\22\1\34\1\4\1\17\2\16\2\4\1\22\2\uffff\2\30";
    static final String DFA13_maxS =
        "\1\5\1\27\1\34\1\5\1\17\2\30\1\43\1\5\1\22\2\uffff\2\30";
    static final String DFA13_acceptS =
        "\12\uffff\1\2\1\1\2\uffff";
    static final String DFA13_specialS =
        "\16\uffff}>";
    static final String[] DFA13_transitionS = {
            "\1\1",
            "\1\2\4\uffff\1\3",
            "\1\4",
            "\1\5\1\6",
            "\1\7",
            "\1\10\11\uffff\1\11",
            "\1\10\11\uffff\1\11",
            "\2\13\21\uffff\1\12\12\uffff\2\12",
            "\1\14\1\15",
            "\1\2",
            "",
            "",
            "\1\11",
            "\1\11"
    };

    static final short[] DFA13_eot = DFA.unpackEncodedString(DFA13_eotS);
    static final short[] DFA13_eof = DFA.unpackEncodedString(DFA13_eofS);
    static final char[] DFA13_min = DFA.unpackEncodedStringToUnsignedChars(DFA13_minS);
    static final char[] DFA13_max = DFA.unpackEncodedStringToUnsignedChars(DFA13_maxS);
    static final short[] DFA13_accept = DFA.unpackEncodedString(DFA13_acceptS);
    static final short[] DFA13_special = DFA.unpackEncodedString(DFA13_specialS);
    static final short[][] DFA13_transition;

    static {
        int numStates = DFA13_transitionS.length;
        DFA13_transition = new short[numStates][];
        for (int i=0; i<numStates; i++) {
            DFA13_transition[i] = DFA.unpackEncodedString(DFA13_transitionS[i]);
        }
    }

    class DFA13 extends DFA {

        public DFA13(BaseRecognizer recognizer) {
            this.recognizer = recognizer;
            this.decisionNumber = 13;
            this.eot = DFA13_eot;
            this.eof = DFA13_eof;
            this.min = DFA13_min;
            this.max = DFA13_max;
            this.accept = DFA13_accept;
            this.special = DFA13_special;
            this.transition = DFA13_transition;
        }
        public String getDescription() {
            return "1326:1: rule__Delete__Alternatives : ( ( ( rule__Delete__Group_0__0 ) ) | ( ( rule__Delete__Group_1__0 ) ) );";
        }
    }
    static final String DFA15_eotS =
        "\15\uffff";
    static final String DFA15_eofS =
        "\15\uffff";
    static final String DFA15_minS =
        "\1\4\1\uffff\1\5\1\4\2\uffff\2\16\1\4\1\5\2\30\1\uffff";
    static final String DFA15_maxS =
        "\1\5\1\uffff\1\27\1\5\2\uffff\2\30\1\5\1\22\2\30\1\uffff";
    static final String DFA15_acceptS =
        "\1\uffff\1\1\2\uffff\1\2\1\4\6\uffff\1\3";
    static final String DFA15_specialS =
        "\15\uffff}>";
    static final String[] DFA15_transitionS = {
            "\1\1\1\2",
            "",
            "\1\4\10\uffff\1\4\1\uffff\1\4\1\uffff\1\5\4\uffff\1\3",
            "\1\6\1\7",
            "",
            "",
            "\1\10\11\uffff\1\11",
            "\1\10\11\uffff\1\11",
            "\1\12\1\13",
            "\1\14\10\uffff\1\14\1\uffff\1\14\1\uffff\1\5",
            "\1\11",
            "\1\11",
            ""
    };

    static final short[] DFA15_eot = DFA.unpackEncodedString(DFA15_eotS);
    static final short[] DFA15_eof = DFA.unpackEncodedString(DFA15_eofS);
    static final char[] DFA15_min = DFA.unpackEncodedStringToUnsignedChars(DFA15_minS);
    static final char[] DFA15_max = DFA.unpackEncodedStringToUnsignedChars(DFA15_maxS);
    static final short[] DFA15_accept = DFA.unpackEncodedString(DFA15_acceptS);
    static final short[] DFA15_special = DFA.unpackEncodedString(DFA15_specialS);
    static final short[][] DFA15_transition;

    static {
        int numStates = DFA15_transitionS.length;
        DFA15_transition = new short[numStates][];
        for (int i=0; i<numStates; i++) {
            DFA15_transition[i] = DFA.unpackEncodedString(DFA15_transitionS[i]);
        }
    }

    class DFA15 extends DFA {

        public DFA15(BaseRecognizer recognizer) {
            this.recognizer = recognizer;
            this.decisionNumber = 15;
            this.eot = DFA15_eot;
            this.eof = DFA15_eof;
            this.min = DFA15_min;
            this.max = DFA15_max;
            this.accept = DFA15_accept;
            this.special = DFA15_special;
            this.transition = DFA15_transition;
        }
        public String getDescription() {
            return "1370:1: rule__Delete__Alternatives_0_4 : ( ( ( rule__Delete__DelElementsAssignment_0_4_0 ) ) | ( ( rule__Delete__DelVarsAssignment_0_4_1 ) ) | ( ( rule__Delete__DelArraysAssignment_0_4_2 ) ) | ( ( rule__Delete__SizeAssignment_0_4_3 ) ) );";
        }
    }
    static final String DFA16_eotS =
        "\14\uffff";
    static final String DFA16_eofS =
        "\14\uffff";
    static final String DFA16_minS =
        "\1\5\1\uffff\1\22\1\uffff\1\4\2\16\1\4\1\5\2\30\1\uffff";
    static final String DFA16_maxS =
        "\1\16\1\uffff\1\27\1\uffff\1\5\2\30\1\5\1\22\2\30\1\uffff";
    static final String DFA16_acceptS =
        "\1\uffff\1\1\1\uffff\1\3\7\uffff\1\2";
    static final String DFA16_specialS =
        "\14\uffff}>";
    static final String[] DFA16_transitionS = {
            "\1\2\10\uffff\1\1",
            "",
            "\1\3\4\uffff\1\4",
            "",
            "\1\5\1\6",
            "\1\7\11\uffff\1\10",
            "\1\7\11\uffff\1\10",
            "\1\11\1\12",
            "\1\13\10\uffff\1\13\1\uffff\1\13\1\uffff\1\3",
            "\1\10",
            "\1\10",
            ""
    };

    static final short[] DFA16_eot = DFA.unpackEncodedString(DFA16_eotS);
    static final short[] DFA16_eof = DFA.unpackEncodedString(DFA16_eofS);
    static final char[] DFA16_min = DFA.unpackEncodedStringToUnsignedChars(DFA16_minS);
    static final char[] DFA16_max = DFA.unpackEncodedStringToUnsignedChars(DFA16_maxS);
    static final short[] DFA16_accept = DFA.unpackEncodedString(DFA16_acceptS);
    static final short[] DFA16_special = DFA.unpackEncodedString(DFA16_specialS);
    static final short[][] DFA16_transition;

    static {
        int numStates = DFA16_transitionS.length;
        DFA16_transition = new short[numStates][];
        for (int i=0; i<numStates; i++) {
            DFA16_transition[i] = DFA.unpackEncodedString(DFA16_transitionS[i]);
        }
    }

    class DFA16 extends DFA {

        public DFA16(BaseRecognizer recognizer) {
            this.recognizer = recognizer;
            this.decisionNumber = 16;
            this.eot = DFA16_eot;
            this.eof = DFA16_eof;
            this.min = DFA16_min;
            this.max = DFA16_max;
            this.accept = DFA16_accept;
            this.special = DFA16_special;
            this.transition = DFA16_transition;
        }
        public String getDescription() {
            return "1404:1: rule__Delete__Alternatives_0_5 : ( ( ( rule__Delete__Group_0_5_0__0 ) ) | ( ( rule__Delete__DelArraysAssignment_0_5_1 ) ) | ( ( rule__Delete__SizeAssignment_0_5_2 ) ) );";
        }
    }
    static final String DFA26_eotS =
        "\15\uffff";
    static final String DFA26_eofS =
        "\15\uffff";
    static final String DFA26_minS =
        "\1\4\1\uffff\1\16\1\uffff\1\4\1\uffff\2\16\1\4\1\16\2\30\1\uffff";
    static final String DFA26_maxS =
        "\1\5\1\uffff\1\27\1\uffff\1\5\1\uffff\2\30\1\5\1\22\2\30\1\uffff";
    static final String DFA26_acceptS =
        "\1\uffff\1\1\1\uffff\1\3\1\uffff\1\2\6\uffff\1\4";
    static final String DFA26_specialS =
        "\15\uffff}>";
    static final String[] DFA26_transitionS = {
            "\1\1\1\2",
            "",
            "\1\5\3\uffff\1\3\4\uffff\1\4",
            "",
            "\1\6\1\7",
            "",
            "\1\10\11\uffff\1\11",
            "\1\10\11\uffff\1\11",
            "\1\12\1\13",
            "\1\14\3\uffff\1\3",
            "\1\11",
            "\1\11",
            ""
    };

    static final short[] DFA26_eot = DFA.unpackEncodedString(DFA26_eotS);
    static final short[] DFA26_eof = DFA.unpackEncodedString(DFA26_eofS);
    static final char[] DFA26_min = DFA.unpackEncodedStringToUnsignedChars(DFA26_minS);
    static final char[] DFA26_max = DFA.unpackEncodedStringToUnsignedChars(DFA26_maxS);
    static final short[] DFA26_accept = DFA.unpackEncodedString(DFA26_acceptS);
    static final short[] DFA26_special = DFA.unpackEncodedString(DFA26_specialS);
    static final short[][] DFA26_transition;

    static {
        int numStates = DFA26_transitionS.length;
        DFA26_transition = new short[numStates][];
        for (int i=0; i<numStates; i++) {
            DFA26_transition[i] = DFA.unpackEncodedString(DFA26_transitionS[i]);
        }
    }

    class DFA26 extends DFA {

        public DFA26(BaseRecognizer recognizer) {
            this.recognizer = recognizer;
            this.decisionNumber = 26;
            this.eot = DFA26_eot;
            this.eof = DFA26_eof;
            this.min = DFA26_min;
            this.max = DFA26_max;
            this.accept = DFA26_accept;
            this.special = DFA26_special;
            this.transition = DFA26_transition;
        }
        public String getDescription() {
            return "1660:1: rule__Forall__Alternatives_3 : ( ( ( rule__Forall__BeginAssignment_3_0 ) ) | ( ( rule__Forall__BeginVarAssignment_3_1 ) ) | ( ( rule__Forall__BeginFunctionAssignment_3_2 ) ) | ( ( rule__Forall__BeginAEAssignment_3_3 ) ) );";
        }
    }
    static final String DFA27_eotS =
        "\15\uffff";
    static final String DFA27_eofS =
        "\15\uffff";
    static final String DFA27_minS =
        "\1\4\1\uffff\1\20\1\4\2\uffff\2\16\1\4\1\20\2\30\1\uffff";
    static final String DFA27_maxS =
        "\1\5\1\uffff\1\27\1\5\2\uffff\2\30\1\5\1\22\2\30\1\uffff";
    static final String DFA27_acceptS =
        "\1\uffff\1\1\2\uffff\1\3\1\2\6\uffff\1\4";
    static final String DFA27_specialS =
        "\15\uffff}>";
    static final String[] DFA27_transitionS = {
            "\1\1\1\2",
            "",
            "\1\5\1\uffff\1\4\4\uffff\1\3",
            "\1\6\1\7",
            "",
            "",
            "\1\10\11\uffff\1\11",
            "\1\10\11\uffff\1\11",
            "\1\12\1\13",
            "\1\14\1\uffff\1\4",
            "\1\11",
            "\1\11",
            ""
    };

    static final short[] DFA27_eot = DFA.unpackEncodedString(DFA27_eotS);
    static final short[] DFA27_eof = DFA.unpackEncodedString(DFA27_eofS);
    static final char[] DFA27_min = DFA.unpackEncodedStringToUnsignedChars(DFA27_minS);
    static final char[] DFA27_max = DFA.unpackEncodedStringToUnsignedChars(DFA27_maxS);
    static final short[] DFA27_accept = DFA.unpackEncodedString(DFA27_acceptS);
    static final short[] DFA27_special = DFA.unpackEncodedString(DFA27_specialS);
    static final short[][] DFA27_transition;

    static {
        int numStates = DFA27_transitionS.length;
        DFA27_transition = new short[numStates][];
        for (int i=0; i<numStates; i++) {
            DFA27_transition[i] = DFA.unpackEncodedString(DFA27_transitionS[i]);
        }
    }

    class DFA27 extends DFA {

        public DFA27(BaseRecognizer recognizer) {
            this.recognizer = recognizer;
            this.decisionNumber = 27;
            this.eot = DFA27_eot;
            this.eof = DFA27_eof;
            this.min = DFA27_min;
            this.max = DFA27_max;
            this.accept = DFA27_accept;
            this.special = DFA27_special;
            this.transition = DFA27_transition;
        }
        public String getDescription() {
            return "1694:1: rule__Forall__Alternatives_5 : ( ( ( rule__Forall__EndAssignment_5_0 ) ) | ( ( rule__Forall__EndVarAssignment_5_1 ) ) | ( ( rule__Forall__EndFunctionAssignment_5_2 ) ) | ( ( rule__Forall__EndAEAssignment_5_3 ) ) );";
        }
    }
    static final String DFA29_eotS =
        "\15\uffff";
    static final String DFA29_eofS =
        "\15\uffff";
    static final String DFA29_minS =
        "\1\40\1\17\1\5\1\16\1\4\2\uffff\2\16\1\4\1\16\2\30";
    static final String DFA29_maxS =
        "\1\40\1\17\1\5\1\27\1\5\2\uffff\2\30\1\5\1\20\2\30";
    static final String DFA29_acceptS =
        "\5\uffff\1\2\1\1\6\uffff";
    static final String DFA29_specialS =
        "\15\uffff}>";
    static final String[] DFA29_transitionS = {
            "\1\1",
            "\1\2",
            "\1\3",
            "\1\5\1\uffff\1\6\6\uffff\1\4",
            "\1\7\1\10",
            "",
            "",
            "\1\11\11\uffff\1\12",
            "\1\11\11\uffff\1\12",
            "\1\13\1\14",
            "\1\5\1\uffff\1\6",
            "\1\12",
            "\1\12"
    };

    static final short[] DFA29_eot = DFA.unpackEncodedString(DFA29_eotS);
    static final short[] DFA29_eof = DFA.unpackEncodedString(DFA29_eofS);
    static final char[] DFA29_min = DFA.unpackEncodedStringToUnsignedChars(DFA29_minS);
    static final char[] DFA29_max = DFA.unpackEncodedStringToUnsignedChars(DFA29_maxS);
    static final short[] DFA29_accept = DFA.unpackEncodedString(DFA29_acceptS);
    static final short[] DFA29_special = DFA.unpackEncodedString(DFA29_specialS);
    static final short[][] DFA29_transition;

    static {
        int numStates = DFA29_transitionS.length;
        DFA29_transition = new short[numStates][];
        for (int i=0; i<numStates; i++) {
            DFA29_transition[i] = DFA.unpackEncodedString(DFA29_transitionS[i]);
        }
    }

    class DFA29 extends DFA {

        public DFA29(BaseRecognizer recognizer) {
            this.recognizer = recognizer;
            this.decisionNumber = 29;
            this.eot = DFA29_eot;
            this.eof = DFA29_eof;
            this.min = DFA29_min;
            this.max = DFA29_max;
            this.accept = DFA29_accept;
            this.special = DFA29_special;
            this.transition = DFA29_transition;
        }
        public String getDescription() {
            return "1762:1: rule__CalcCR__Alternatives : ( ( ( rule__CalcCR__Group_0__0 ) ) | ( ( rule__CalcCR__Group_1__0 ) ) );";
        }
    }
 

    public static final BitSet FOLLOW_ruleCRLanguage_in_entryRuleCRLanguage61 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleCRLanguage68 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CRLanguage__ElementsAssignment_in_ruleCRLanguage94 = new BitSet(new long[]{0x0000000FE2003822L});
    public static final BitSet FOLLOW_ruleElement_in_entryRuleElement122 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleElement129 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Element__Alternatives_in_ruleElement155 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleVarDec_in_entryRuleVarDec182 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleVarDec189 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__VarDec__Alternatives_in_ruleVarDec215 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rulePrimitiveDec_in_entryRulePrimitiveDec242 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRulePrimitiveDec249 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__PrimitiveDec__Alternatives_in_rulePrimitiveDec275 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleIntDec_in_entryRuleIntDec302 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleIntDec309 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__IntDec__Group__0_in_ruleIntDec335 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleRealDec_in_entryRuleRealDec362 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleRealDec369 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RealDec__Group__0_in_ruleRealDec395 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rulePartitionDec_in_entryRulePartitionDec422 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRulePartitionDec429 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__PartitionDec__Group__0_in_rulePartitionDec455 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArrayDec_in_entryRuleArrayDec482 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleArrayDec489 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayDec__Group__0_in_ruleArrayDec515 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleAssignment_in_entryRuleAssignment542 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleAssignment549 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Assignment__Group__0_in_ruleAssignment575 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArrayMethod_in_entryRuleArrayMethod602 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleArrayMethod609 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayMethod__Alternatives_in_ruleArrayMethod635 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleSize_in_entryRuleSize662 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleSize669 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Size__Group__0_in_ruleSize695 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleAdd_in_entryRuleAdd722 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleAdd729 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__Group__0_in_ruleAdd755 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleDelete_in_entryRuleDelete782 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleDelete789 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Alternatives_in_ruleDelete815 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleFunction_in_entryRuleFunction842 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleFunction849 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Function__Alternatives_in_ruleFunction875 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleStandardFunction_in_entryRuleStandardFunction902 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleStandardFunction909 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__StandardFunction__Alternatives_in_ruleStandardFunction935 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rulePrint_in_entryRulePrint962 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRulePrint969 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Print__Group__0_in_rulePrint995 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleFor_in_entryRuleFor1022 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleFor1029 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__For__Alternatives_in_ruleFor1055 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleForall_in_entryRuleForall1082 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleForall1089 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Forall__Group__0_in_ruleForall1115 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleCRFunction_in_entryRuleCRFunction1142 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleCRFunction1149 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CRFunction__Alternatives_in_ruleCRFunction1175 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleCalcCR_in_entryRuleCalcCR1202 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleCalcCR1209 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcCR__Alternatives_in_ruleCalcCR1235 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleCalcMean_in_entryRuleCalcMean1262 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleCalcMean1269 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcMean__Group__0_in_ruleCalcMean1295 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleHighestCR_in_entryRuleHighestCR1322 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleHighestCR1329 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__HighestCR__Group__0_in_ruleHighestCR1355 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleFindSimilar_in_entryRuleFindSimilar1382 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleFindSimilar1389 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__FindSimilar__Group__0_in_ruleFindSimilar1415 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleSimpleVariable_in_entryRuleSimpleVariable1444 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleSimpleVariable1451 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__SimpleVariable__NameAssignment_in_ruleSimpleVariable1477 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArray_in_entryRuleArray1504 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleArray1511 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Array__NameAssignment_in_ruleArray1537 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleNumber_in_entryRuleNumber1564 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleNumber1571 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Number__Group__0_in_ruleNumber1597 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleFolder_in_entryRuleFolder1624 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleFolder1631 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Folder__Alternatives_in_ruleFolder1657 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArchive_in_entryRuleArchive1684 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleArchive1691 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Archive__Group__0_in_ruleArchive1717 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleLinuxFolder_in_entryRuleLinuxFolder1744 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleLinuxFolder1751 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__LinuxFolder__Group__0_in_ruleLinuxFolder1777 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleWindowsFolder_in_entryRuleWindowsFolder1804 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleWindowsFolder1811 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__WindowsFolder__Group__0_in_ruleWindowsFolder1837 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArrayElement_in_entryRuleArrayElement1864 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleArrayElement1871 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayElement__Group__0_in_ruleArrayElement1897 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleIndex_in_entryRuleIndex1924 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleIndex1931 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Index__Group__0_in_ruleIndex1957 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Element__VarDecAssignment_0_in_rule__Element__Alternatives1993 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Element__AssignmentAssignment_1_in_rule__Element__Alternatives2011 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Element__ArrayMethodAssignment_2_in_rule__Element__Alternatives2029 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Element__FunctionAssignment_3_in_rule__Element__Alternatives2047 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__VarDec__PrimitiveDecAssignment_0_in_rule__VarDec__Alternatives2080 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__VarDec__ArrayDecAssignment_1_in_rule__VarDec__Alternatives2098 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__PrimitiveDec__IntDecAssignment_0_in_rule__PrimitiveDec__Alternatives2131 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__PrimitiveDec__RealDecAssignment_1_in_rule__PrimitiveDec__Alternatives2149 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__PrimitiveDec__PartitionDecAssignment_2_in_rule__PrimitiveDec__Alternatives2167 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_11_in_rule__ArrayDec__TypeAlternatives_5_02201 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_12_in_rule__ArrayDec__TypeAlternatives_5_02221 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_13_in_rule__ArrayDec__TypeAlternatives_5_02241 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Assignment__DecAssignment_0_0_in_rule__Assignment__Alternatives_02275 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Assignment__Group_0_1__0_in_rule__Assignment__Alternatives_02293 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Assignment__ArrayElementAssignment_0_2_in_rule__Assignment__Alternatives_02311 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Assignment__CalcCRAssignment_2_0_in_rule__Assignment__Alternatives_22344 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Assignment__CalcMeanAssignment_2_1_in_rule__Assignment__Alternatives_22362 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Assignment__NumberAssignment_2_2_in_rule__Assignment__Alternatives_22380 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Assignment__ArchiveAssignment_2_3_in_rule__Assignment__Alternatives_22398 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Assignment__VariableAssignment_2_4_in_rule__Assignment__Alternatives_22416 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Assignment__AssignedAEAssignment_2_5_in_rule__Assignment__Alternatives_22434 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayMethod__SizeAssignment_0_in_rule__ArrayMethod__Alternatives2467 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayMethod__AddAssignment_1_in_rule__ArrayMethod__Alternatives2485 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayMethod__DeleteAssignment_2_in_rule__ArrayMethod__Alternatives2503 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Size__ArrayAssignment_0_0_in_rule__Size__Alternatives_02536 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Size__ArrayElementAssignment_0_1_in_rule__Size__Alternatives_02554 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__ArrayAssignment_0_0_in_rule__Add__Alternatives_02587 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__ArrayElementAssignment_0_1_in_rule__Add__Alternatives_02605 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__NumParamsAssignment_4_0_in_rule__Add__Alternatives_42638 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__VarParamsAssignment_4_1_in_rule__Add__Alternatives_42656 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__AeParamsAssignment_4_2_in_rule__Add__Alternatives_42674 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__ArchiveAssignment_4_3_in_rule__Add__Alternatives_42692 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__SizesAssignment_4_4_in_rule__Add__Alternatives_42710 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__CalcCRsAssignment_4_5_in_rule__Add__Alternatives_42728 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__CalcMeansAssignment_4_6_in_rule__Add__Alternatives_42746 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__NumParamsAssignment_5_1_0_in_rule__Add__Alternatives_5_12779 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__VarParamsAssignment_5_1_1_in_rule__Add__Alternatives_5_12797 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__AeParamsAssignment_5_1_2_in_rule__Add__Alternatives_5_12815 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__ArchiveAssignment_5_1_3_in_rule__Add__Alternatives_5_12833 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__SizesAssignment_5_1_4_in_rule__Add__Alternatives_5_12851 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__CalcCRsAssignment_5_1_5_in_rule__Add__Alternatives_5_12869 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__CalcMeansAssignment_5_1_6_in_rule__Add__Alternatives_5_12887 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Group_0__0_in_rule__Delete__Alternatives2920 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Group_1__0_in_rule__Delete__Alternatives2938 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__ArrayAssignment_0_0_0_in_rule__Delete__Alternatives_0_02971 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__ArrayElementAssignment_0_0_1_in_rule__Delete__Alternatives_0_02989 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__DelElementsAssignment_0_4_0_in_rule__Delete__Alternatives_0_43022 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__DelVarsAssignment_0_4_1_in_rule__Delete__Alternatives_0_43040 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__DelArraysAssignment_0_4_2_in_rule__Delete__Alternatives_0_43058 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__SizeAssignment_0_4_3_in_rule__Delete__Alternatives_0_43076 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Group_0_5_0__0_in_rule__Delete__Alternatives_0_53109 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__DelArraysAssignment_0_5_1_in_rule__Delete__Alternatives_0_53127 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__SizeAssignment_0_5_2_in_rule__Delete__Alternatives_0_53145 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__DelElementsAssignment_0_5_0_1_0_in_rule__Delete__Alternatives_0_5_0_13178 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__DelVarsAssignment_0_5_0_1_1_in_rule__Delete__Alternatives_0_5_0_13196 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__ArrayAssignment_1_0_0_in_rule__Delete__Alternatives_1_03229 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__ArrayElementAssignment_1_0_1_in_rule__Delete__Alternatives_1_03247 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__IndexsAssignment_1_4_0_in_rule__Delete__Alternatives_1_43280 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__FindSimilarsAssignment_1_4_1_in_rule__Delete__Alternatives_1_43298 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__HighestCRsAssignment_1_4_2_in_rule__Delete__Alternatives_1_43316 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__IndxsAssignment_1_5_1_0_in_rule__Delete__Alternatives_1_5_13349 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__FindSimilarsAssignment_1_5_1_1_in_rule__Delete__Alternatives_1_5_13367 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__HighestCRsAssignment_1_5_1_2_in_rule__Delete__Alternatives_1_5_13385 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Function__StandardFunctionAssignment_0_in_rule__Function__Alternatives3418 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Function__CrFunctionAssignment_1_in_rule__Function__Alternatives3436 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__StandardFunction__PrintAssignment_0_in_rule__StandardFunction__Alternatives3469 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__StandardFunction__ForAssignment_1_in_rule__StandardFunction__Alternatives3487 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__StandardFunction__ForallAssignment_2_in_rule__StandardFunction__Alternatives3505 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Print__VarAssignment_2_0_in_rule__Print__Alternatives_23538 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Print__MsgAssignment_2_1_in_rule__Print__Alternatives_23556 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Print__AeParamAssignment_2_2_in_rule__Print__Alternatives_23574 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Print__VarAssignment_3_1_0_in_rule__Print__Alternatives_3_13607 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Print__MsgAssignment_3_1_1_in_rule__Print__Alternatives_3_13625 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Print__AeParamAssignment_3_1_2_in_rule__Print__Alternatives_3_13643 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__For__Group_0__0_in_rule__For__Alternatives3676 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__For__Group_1__0_in_rule__For__Alternatives3694 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Forall__BeginAssignment_3_0_in_rule__Forall__Alternatives_33727 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Forall__BeginVarAssignment_3_1_in_rule__Forall__Alternatives_33745 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Forall__BeginFunctionAssignment_3_2_in_rule__Forall__Alternatives_33763 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Forall__BeginAEAssignment_3_3_in_rule__Forall__Alternatives_33781 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Forall__EndAssignment_5_0_in_rule__Forall__Alternatives_53814 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Forall__EndVarAssignment_5_1_in_rule__Forall__Alternatives_53832 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Forall__EndFunctionAssignment_5_2_in_rule__Forall__Alternatives_53850 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Forall__EndAEAssignment_5_3_in_rule__Forall__Alternatives_53868 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CRFunction__CalcCRAssignment_0_in_rule__CRFunction__Alternatives3901 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CRFunction__CalcMeanAssignment_1_in_rule__CRFunction__Alternatives3919 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CRFunction__HighestCRAssignment_2_in_rule__CRFunction__Alternatives3937 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CRFunction__FindSimilarAssignment_3_in_rule__CRFunction__Alternatives3955 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcCR__Group_0__0_in_rule__CalcCR__Alternatives3988 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcCR__Group_1__0_in_rule__CalcCR__Alternatives4006 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcCR__VectorAssignment_0_2_0_in_rule__CalcCR__Alternatives_0_24039 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcCR__ArrayElementAssignment_0_2_1_in_rule__CalcCR__Alternatives_0_24057 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcCR__ArrayElement1Assignment_1_2_0_in_rule__CalcCR__Alternatives_1_24090 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcCR__Var1Assignment_1_2_1_in_rule__CalcCR__Alternatives_1_24108 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcCR__ArrayElement2Assignment_1_4_0_in_rule__CalcCR__Alternatives_1_44141 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcCR__Var2Assignment_1_4_1_in_rule__CalcCR__Alternatives_1_44159 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcMean__ArrayAssignment_2_0_in_rule__CalcMean__Alternatives_24192 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcMean__ArrayElementAssignment_2_1_in_rule__CalcMean__Alternatives_24210 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcMean__CalcCRAssignment_2_2_in_rule__CalcMean__Alternatives_24228 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__HighestCR__ArrayAssignment_2_0_in_rule__HighestCR__Alternatives_24261 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__HighestCR__ArrayElementAssignment_2_1_in_rule__HighestCR__Alternatives_24279 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__HighestCR__CalcCRAssignment_2_2_in_rule__HighestCR__Alternatives_24297 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__FindSimilar__IndxIntAssignment_4_0_in_rule__FindSimilar__Alternatives_44330 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__FindSimilar__IndxVarAssignment_4_1_in_rule__FindSimilar__Alternatives_44348 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__FindSimilar__IndxAEAssignment_4_2_in_rule__FindSimilar__Alternatives_44366 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__FindSimilar__SimilarityNumAssignment_6_0_in_rule__FindSimilar__Alternatives_64399 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__FindSimilar__SimilarityVarAssignment_6_1_in_rule__FindSimilar__Alternatives_64417 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__FindSimilar__SimilarityAEAssignment_6_2_in_rule__FindSimilar__Alternatives_64435 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__FindSimilar__SimilarityCalcCRAssignment_6_3_in_rule__FindSimilar__Alternatives_64453 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__FindSimilar__SimilarityCalcMeanAssignment_6_4_in_rule__FindSimilar__Alternatives_64471 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Folder__LinuxFolderAssignment_0_in_rule__Folder__Alternatives4505 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Folder__WindowsFolderAssignment_1_in_rule__Folder__Alternatives4523 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Index__Param1Assignment_1_0_in_rule__Index__Alternatives_14556 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Index__Var1Assignment_1_1_in_rule__Index__Alternatives_14574 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Index__Param2Assignment_2_1_0_in_rule__Index__Alternatives_2_14607 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Index__Var2Assignment_2_1_1_in_rule__Index__Alternatives_2_14625 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__IntDec__Group__0__Impl_in_rule__IntDec__Group__04656 = new BitSet(new long[]{0x0000000000000020L});
    public static final BitSet FOLLOW_rule__IntDec__Group__1_in_rule__IntDec__Group__04659 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__IntDec__TypeAssignment_0_in_rule__IntDec__Group__0__Impl4686 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__IntDec__Group__1__Impl_in_rule__IntDec__Group__14716 = new BitSet(new long[]{0x0000000000004000L});
    public static final BitSet FOLLOW_rule__IntDec__Group__2_in_rule__IntDec__Group__14719 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__IntDec__VarsAssignment_1_in_rule__IntDec__Group__1__Impl4746 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__IntDec__Group__2__Impl_in_rule__IntDec__Group__24776 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__IntDec__Group_2__0_in_rule__IntDec__Group__2__Impl4803 = new BitSet(new long[]{0x0000000000004002L});
    public static final BitSet FOLLOW_rule__IntDec__Group_2__0__Impl_in_rule__IntDec__Group_2__04840 = new BitSet(new long[]{0x0000000000000020L});
    public static final BitSet FOLLOW_rule__IntDec__Group_2__1_in_rule__IntDec__Group_2__04843 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_14_in_rule__IntDec__Group_2__0__Impl4871 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__IntDec__Group_2__1__Impl_in_rule__IntDec__Group_2__14902 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__IntDec__VarsAssignment_2_1_in_rule__IntDec__Group_2__1__Impl4929 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RealDec__Group__0__Impl_in_rule__RealDec__Group__04963 = new BitSet(new long[]{0x0000000000000020L});
    public static final BitSet FOLLOW_rule__RealDec__Group__1_in_rule__RealDec__Group__04966 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RealDec__TypeAssignment_0_in_rule__RealDec__Group__0__Impl4993 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RealDec__Group__1__Impl_in_rule__RealDec__Group__15023 = new BitSet(new long[]{0x0000000000004000L});
    public static final BitSet FOLLOW_rule__RealDec__Group__2_in_rule__RealDec__Group__15026 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RealDec__VarsAssignment_1_in_rule__RealDec__Group__1__Impl5053 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RealDec__Group__2__Impl_in_rule__RealDec__Group__25083 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RealDec__Group_2__0_in_rule__RealDec__Group__2__Impl5110 = new BitSet(new long[]{0x0000000000004002L});
    public static final BitSet FOLLOW_rule__RealDec__Group_2__0__Impl_in_rule__RealDec__Group_2__05147 = new BitSet(new long[]{0x0000000000000020L});
    public static final BitSet FOLLOW_rule__RealDec__Group_2__1_in_rule__RealDec__Group_2__05150 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_14_in_rule__RealDec__Group_2__0__Impl5178 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RealDec__Group_2__1__Impl_in_rule__RealDec__Group_2__15209 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__RealDec__VarsAssignment_2_1_in_rule__RealDec__Group_2__1__Impl5236 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__PartitionDec__Group__0__Impl_in_rule__PartitionDec__Group__05270 = new BitSet(new long[]{0x0000000000000020L});
    public static final BitSet FOLLOW_rule__PartitionDec__Group__1_in_rule__PartitionDec__Group__05273 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__PartitionDec__TypeAssignment_0_in_rule__PartitionDec__Group__0__Impl5300 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__PartitionDec__Group__1__Impl_in_rule__PartitionDec__Group__15330 = new BitSet(new long[]{0x0000000000004000L});
    public static final BitSet FOLLOW_rule__PartitionDec__Group__2_in_rule__PartitionDec__Group__15333 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__PartitionDec__VarsAssignment_1_in_rule__PartitionDec__Group__1__Impl5360 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__PartitionDec__Group__2__Impl_in_rule__PartitionDec__Group__25390 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__PartitionDec__Group_2__0_in_rule__PartitionDec__Group__2__Impl5417 = new BitSet(new long[]{0x0000000000004002L});
    public static final BitSet FOLLOW_rule__PartitionDec__Group_2__0__Impl_in_rule__PartitionDec__Group_2__05454 = new BitSet(new long[]{0x0000000000000020L});
    public static final BitSet FOLLOW_rule__PartitionDec__Group_2__1_in_rule__PartitionDec__Group_2__05457 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_14_in_rule__PartitionDec__Group_2__0__Impl5485 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__PartitionDec__Group_2__1__Impl_in_rule__PartitionDec__Group_2__15516 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__PartitionDec__VarsAssignment_2_1_in_rule__PartitionDec__Group_2__1__Impl5543 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayDec__Group__0__Impl_in_rule__ArrayDec__Group__05577 = new BitSet(new long[]{0x0000000000008000L});
    public static final BitSet FOLLOW_rule__ArrayDec__Group__1_in_rule__ArrayDec__Group__05580 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayDec__ArrayAssignment_0_in_rule__ArrayDec__Group__0__Impl5607 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayDec__Group__1__Impl_in_rule__ArrayDec__Group__15637 = new BitSet(new long[]{0x0000000000000010L});
    public static final BitSet FOLLOW_rule__ArrayDec__Group__2_in_rule__ArrayDec__Group__15640 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_15_in_rule__ArrayDec__Group__1__Impl5668 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayDec__Group__2__Impl_in_rule__ArrayDec__Group__25699 = new BitSet(new long[]{0x0000000000014000L});
    public static final BitSet FOLLOW_rule__ArrayDec__Group__3_in_rule__ArrayDec__Group__25702 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayDec__ColumsAssignment_2_in_rule__ArrayDec__Group__2__Impl5729 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayDec__Group__3__Impl_in_rule__ArrayDec__Group__35759 = new BitSet(new long[]{0x0000000000014000L});
    public static final BitSet FOLLOW_rule__ArrayDec__Group__4_in_rule__ArrayDec__Group__35762 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayDec__Group_3__0_in_rule__ArrayDec__Group__3__Impl5789 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayDec__Group__4__Impl_in_rule__ArrayDec__Group__45820 = new BitSet(new long[]{0x0000000000003800L});
    public static final BitSet FOLLOW_rule__ArrayDec__Group__5_in_rule__ArrayDec__Group__45823 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_16_in_rule__ArrayDec__Group__4__Impl5851 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayDec__Group__5__Impl_in_rule__ArrayDec__Group__55882 = new BitSet(new long[]{0x0000000000000020L});
    public static final BitSet FOLLOW_rule__ArrayDec__Group__6_in_rule__ArrayDec__Group__55885 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayDec__TypeAssignment_5_in_rule__ArrayDec__Group__5__Impl5912 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayDec__Group__6__Impl_in_rule__ArrayDec__Group__65942 = new BitSet(new long[]{0x0000000000004000L});
    public static final BitSet FOLLOW_rule__ArrayDec__Group__7_in_rule__ArrayDec__Group__65945 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayDec__ArrayVarsAssignment_6_in_rule__ArrayDec__Group__6__Impl5972 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayDec__Group__7__Impl_in_rule__ArrayDec__Group__76002 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayDec__Group_7__0_in_rule__ArrayDec__Group__7__Impl6029 = new BitSet(new long[]{0x0000000000004002L});
    public static final BitSet FOLLOW_rule__ArrayDec__Group_3__0__Impl_in_rule__ArrayDec__Group_3__06076 = new BitSet(new long[]{0x0000000000000010L});
    public static final BitSet FOLLOW_rule__ArrayDec__Group_3__1_in_rule__ArrayDec__Group_3__06079 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_14_in_rule__ArrayDec__Group_3__0__Impl6107 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayDec__Group_3__1__Impl_in_rule__ArrayDec__Group_3__16138 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayDec__RowsAssignment_3_1_in_rule__ArrayDec__Group_3__1__Impl6165 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayDec__Group_7__0__Impl_in_rule__ArrayDec__Group_7__06199 = new BitSet(new long[]{0x0000000000000020L});
    public static final BitSet FOLLOW_rule__ArrayDec__Group_7__1_in_rule__ArrayDec__Group_7__06202 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_14_in_rule__ArrayDec__Group_7__0__Impl6230 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayDec__Group_7__1__Impl_in_rule__ArrayDec__Group_7__16261 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayDec__ArrayVarsAssignment_7_1_in_rule__ArrayDec__Group_7__1__Impl6288 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Assignment__Group__0__Impl_in_rule__Assignment__Group__06322 = new BitSet(new long[]{0x0000000000020000L});
    public static final BitSet FOLLOW_rule__Assignment__Group__1_in_rule__Assignment__Group__06325 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Assignment__Alternatives_0_in_rule__Assignment__Group__0__Impl6352 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Assignment__Group__1__Impl_in_rule__Assignment__Group__16382 = new BitSet(new long[]{0x0000002302003830L});
    public static final BitSet FOLLOW_rule__Assignment__Group__2_in_rule__Assignment__Group__16385 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_17_in_rule__Assignment__Group__1__Impl6413 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Assignment__Group__2__Impl_in_rule__Assignment__Group__26444 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Assignment__Alternatives_2_in_rule__Assignment__Group__2__Impl6471 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Assignment__Group_0_1__0__Impl_in_rule__Assignment__Group_0_1__06507 = new BitSet(new long[]{0x0000000000004000L});
    public static final BitSet FOLLOW_rule__Assignment__Group_0_1__1_in_rule__Assignment__Group_0_1__06510 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Assignment__VariablesAssignment_0_1_0_in_rule__Assignment__Group_0_1__0__Impl6537 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Assignment__Group_0_1__1__Impl_in_rule__Assignment__Group_0_1__16567 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Assignment__Group_0_1_1__0_in_rule__Assignment__Group_0_1__1__Impl6594 = new BitSet(new long[]{0x0000000000004002L});
    public static final BitSet FOLLOW_rule__Assignment__Group_0_1_1__0__Impl_in_rule__Assignment__Group_0_1_1__06629 = new BitSet(new long[]{0x0000000000000020L});
    public static final BitSet FOLLOW_rule__Assignment__Group_0_1_1__1_in_rule__Assignment__Group_0_1_1__06632 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_14_in_rule__Assignment__Group_0_1_1__0__Impl6660 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Assignment__Group_0_1_1__1__Impl_in_rule__Assignment__Group_0_1_1__16691 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Assignment__VariablesAssignment_0_1_1_1_in_rule__Assignment__Group_0_1_1__1__Impl6718 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Size__Group__0__Impl_in_rule__Size__Group__06752 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_rule__Size__Group__1_in_rule__Size__Group__06755 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Size__Alternatives_0_in_rule__Size__Group__0__Impl6782 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Size__Group__1__Impl_in_rule__Size__Group__16812 = new BitSet(new long[]{0x0000000004000000L});
    public static final BitSet FOLLOW_rule__Size__Group__2_in_rule__Size__Group__16815 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_18_in_rule__Size__Group__1__Impl6843 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Size__Group__2__Impl_in_rule__Size__Group__26874 = new BitSet(new long[]{0x0000000000008000L});
    public static final BitSet FOLLOW_rule__Size__Group__3_in_rule__Size__Group__26877 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Size__MethodAssignment_2_in_rule__Size__Group__2__Impl6904 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Size__Group__3__Impl_in_rule__Size__Group__36934 = new BitSet(new long[]{0x0000000000010000L});
    public static final BitSet FOLLOW_rule__Size__Group__4_in_rule__Size__Group__36937 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_15_in_rule__Size__Group__3__Impl6965 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Size__Group__4__Impl_in_rule__Size__Group__46996 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_16_in_rule__Size__Group__4__Impl7024 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__Group__0__Impl_in_rule__Add__Group__07065 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_rule__Add__Group__1_in_rule__Add__Group__07068 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__Alternatives_0_in_rule__Add__Group__0__Impl7095 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__Group__1__Impl_in_rule__Add__Group__17125 = new BitSet(new long[]{0x0000000008000000L});
    public static final BitSet FOLLOW_rule__Add__Group__2_in_rule__Add__Group__17128 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_18_in_rule__Add__Group__1__Impl7156 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__Group__2__Impl_in_rule__Add__Group__27187 = new BitSet(new long[]{0x0000000000008000L});
    public static final BitSet FOLLOW_rule__Add__Group__3_in_rule__Add__Group__27190 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__MethodAssignment_2_in_rule__Add__Group__2__Impl7217 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__Group__3__Impl_in_rule__Add__Group__37247 = new BitSet(new long[]{0x0000002302003830L});
    public static final BitSet FOLLOW_rule__Add__Group__4_in_rule__Add__Group__37250 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_15_in_rule__Add__Group__3__Impl7278 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__Group__4__Impl_in_rule__Add__Group__47309 = new BitSet(new long[]{0x0000000000014000L});
    public static final BitSet FOLLOW_rule__Add__Group__5_in_rule__Add__Group__47312 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__Alternatives_4_in_rule__Add__Group__4__Impl7339 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__Group__5__Impl_in_rule__Add__Group__57369 = new BitSet(new long[]{0x0000000000014000L});
    public static final BitSet FOLLOW_rule__Add__Group__6_in_rule__Add__Group__57372 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__Group_5__0_in_rule__Add__Group__5__Impl7399 = new BitSet(new long[]{0x0000000000004002L});
    public static final BitSet FOLLOW_rule__Add__Group__6__Impl_in_rule__Add__Group__67430 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_16_in_rule__Add__Group__6__Impl7458 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__Group_5__0__Impl_in_rule__Add__Group_5__07503 = new BitSet(new long[]{0x0000002302003830L});
    public static final BitSet FOLLOW_rule__Add__Group_5__1_in_rule__Add__Group_5__07506 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_14_in_rule__Add__Group_5__0__Impl7534 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__Group_5__1__Impl_in_rule__Add__Group_5__17565 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Add__Alternatives_5_1_in_rule__Add__Group_5__1__Impl7592 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Group_0__0__Impl_in_rule__Delete__Group_0__07626 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_rule__Delete__Group_0__1_in_rule__Delete__Group_0__07629 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Alternatives_0_0_in_rule__Delete__Group_0__0__Impl7656 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Group_0__1__Impl_in_rule__Delete__Group_0__17686 = new BitSet(new long[]{0x0000000010000000L});
    public static final BitSet FOLLOW_rule__Delete__Group_0__2_in_rule__Delete__Group_0__17689 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_18_in_rule__Delete__Group_0__1__Impl7717 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Group_0__2__Impl_in_rule__Delete__Group_0__27748 = new BitSet(new long[]{0x0000000000008000L});
    public static final BitSet FOLLOW_rule__Delete__Group_0__3_in_rule__Delete__Group_0__27751 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__MethodAssignment_0_2_in_rule__Delete__Group_0__2__Impl7778 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Group_0__3__Impl_in_rule__Delete__Group_0__37808 = new BitSet(new long[]{0x0000000002003830L});
    public static final BitSet FOLLOW_rule__Delete__Group_0__4_in_rule__Delete__Group_0__37811 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_15_in_rule__Delete__Group_0__3__Impl7839 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Group_0__4__Impl_in_rule__Delete__Group_0__47870 = new BitSet(new long[]{0x0000000002017820L});
    public static final BitSet FOLLOW_rule__Delete__Group_0__5_in_rule__Delete__Group_0__47873 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Alternatives_0_4_in_rule__Delete__Group_0__4__Impl7900 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Group_0__5__Impl_in_rule__Delete__Group_0__57930 = new BitSet(new long[]{0x0000000002017820L});
    public static final BitSet FOLLOW_rule__Delete__Group_0__6_in_rule__Delete__Group_0__57933 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Alternatives_0_5_in_rule__Delete__Group_0__5__Impl7960 = new BitSet(new long[]{0x0000000002007822L});
    public static final BitSet FOLLOW_rule__Delete__Group_0__6__Impl_in_rule__Delete__Group_0__67991 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_16_in_rule__Delete__Group_0__6__Impl8019 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Group_0_5_0__0__Impl_in_rule__Delete__Group_0_5_0__08064 = new BitSet(new long[]{0x0000000000000030L});
    public static final BitSet FOLLOW_rule__Delete__Group_0_5_0__1_in_rule__Delete__Group_0_5_0__08067 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_14_in_rule__Delete__Group_0_5_0__0__Impl8095 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Group_0_5_0__1__Impl_in_rule__Delete__Group_0_5_0__18126 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Alternatives_0_5_0_1_in_rule__Delete__Group_0_5_0__1__Impl8153 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Group_1__0__Impl_in_rule__Delete__Group_1__08187 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_rule__Delete__Group_1__1_in_rule__Delete__Group_1__08190 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Alternatives_1_0_in_rule__Delete__Group_1__0__Impl8217 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Group_1__1__Impl_in_rule__Delete__Group_1__18247 = new BitSet(new long[]{0x0000000010000000L});
    public static final BitSet FOLLOW_rule__Delete__Group_1__2_in_rule__Delete__Group_1__18250 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_18_in_rule__Delete__Group_1__1__Impl8278 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Group_1__2__Impl_in_rule__Delete__Group_1__28309 = new BitSet(new long[]{0x0000000000008000L});
    public static final BitSet FOLLOW_rule__Delete__Group_1__3_in_rule__Delete__Group_1__28312 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__MethodAssignment_1_2_in_rule__Delete__Group_1__2__Impl8339 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Group_1__3__Impl_in_rule__Delete__Group_1__38369 = new BitSet(new long[]{0x0000000FE2803820L});
    public static final BitSet FOLLOW_rule__Delete__Group_1__4_in_rule__Delete__Group_1__38372 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_15_in_rule__Delete__Group_1__3__Impl8400 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Group_1__4__Impl_in_rule__Delete__Group_1__48431 = new BitSet(new long[]{0x0000000000014000L});
    public static final BitSet FOLLOW_rule__Delete__Group_1__5_in_rule__Delete__Group_1__48434 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Alternatives_1_4_in_rule__Delete__Group_1__4__Impl8461 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Group_1__5__Impl_in_rule__Delete__Group_1__58491 = new BitSet(new long[]{0x0000000000014000L});
    public static final BitSet FOLLOW_rule__Delete__Group_1__6_in_rule__Delete__Group_1__58494 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Group_1_5__0_in_rule__Delete__Group_1__5__Impl8521 = new BitSet(new long[]{0x0000000000004002L});
    public static final BitSet FOLLOW_rule__Delete__Group_1__6__Impl_in_rule__Delete__Group_1__68552 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_16_in_rule__Delete__Group_1__6__Impl8580 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Group_1_5__0__Impl_in_rule__Delete__Group_1_5__08625 = new BitSet(new long[]{0x0000000FE2803820L});
    public static final BitSet FOLLOW_rule__Delete__Group_1_5__1_in_rule__Delete__Group_1_5__08628 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_14_in_rule__Delete__Group_1_5__0__Impl8656 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Group_1_5__1__Impl_in_rule__Delete__Group_1_5__18687 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Delete__Alternatives_1_5_1_in_rule__Delete__Group_1_5__1__Impl8714 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Print__Group__0__Impl_in_rule__Print__Group__08748 = new BitSet(new long[]{0x0000000000008000L});
    public static final BitSet FOLLOW_rule__Print__Group__1_in_rule__Print__Group__08751 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Print__FunctionAssignment_0_in_rule__Print__Group__0__Impl8778 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Print__Group__1__Impl_in_rule__Print__Group__18808 = new BitSet(new long[]{0x0000000002003860L});
    public static final BitSet FOLLOW_rule__Print__Group__2_in_rule__Print__Group__18811 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_15_in_rule__Print__Group__1__Impl8839 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Print__Group__2__Impl_in_rule__Print__Group__28870 = new BitSet(new long[]{0x0000000000014000L});
    public static final BitSet FOLLOW_rule__Print__Group__3_in_rule__Print__Group__28873 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Print__Alternatives_2_in_rule__Print__Group__2__Impl8900 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Print__Group__3__Impl_in_rule__Print__Group__38930 = new BitSet(new long[]{0x0000000000014000L});
    public static final BitSet FOLLOW_rule__Print__Group__4_in_rule__Print__Group__38933 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Print__Group_3__0_in_rule__Print__Group__3__Impl8960 = new BitSet(new long[]{0x0000000000004002L});
    public static final BitSet FOLLOW_rule__Print__Group__4__Impl_in_rule__Print__Group__48991 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_16_in_rule__Print__Group__4__Impl9019 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Print__Group_3__0__Impl_in_rule__Print__Group_3__09060 = new BitSet(new long[]{0x0000000002003860L});
    public static final BitSet FOLLOW_rule__Print__Group_3__1_in_rule__Print__Group_3__09063 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_14_in_rule__Print__Group_3__0__Impl9091 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Print__Group_3__1__Impl_in_rule__Print__Group_3__19122 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Print__Alternatives_3_1_in_rule__Print__Group_3__1__Impl9149 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__For__Group_0__0__Impl_in_rule__For__Group_0__09183 = new BitSet(new long[]{0x0000000000008000L});
    public static final BitSet FOLLOW_rule__For__Group_0__1_in_rule__For__Group_0__09186 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__For__FunctionAssignment_0_0_in_rule__For__Group_0__0__Impl9213 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__For__Group_0__1__Impl_in_rule__For__Group_0__19243 = new BitSet(new long[]{0x0000000000080000L});
    public static final BitSet FOLLOW_rule__For__Group_0__2_in_rule__For__Group_0__19246 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_15_in_rule__For__Group_0__1__Impl9274 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__For__Group_0__2__Impl_in_rule__For__Group_0__29305 = new BitSet(new long[]{0x0000000000000020L});
    public static final BitSet FOLLOW_rule__For__Group_0__3_in_rule__For__Group_0__29308 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_19_in_rule__For__Group_0__2__Impl9336 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__For__Group_0__3__Impl_in_rule__For__Group_0__39367 = new BitSet(new long[]{0x0000000000100000L});
    public static final BitSet FOLLOW_rule__For__Group_0__4_in_rule__For__Group_0__39370 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__For__LocVarAssignment_0_3_in_rule__For__Group_0__3__Impl9397 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__For__Group_0__4__Impl_in_rule__For__Group_0__49427 = new BitSet(new long[]{0x0000002000000020L});
    public static final BitSet FOLLOW_rule__For__Group_0__5_in_rule__For__Group_0__49430 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_20_in_rule__For__Group_0__4__Impl9458 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__For__Group_0__5__Impl_in_rule__For__Group_0__59489 = new BitSet(new long[]{0x0000000000010000L});
    public static final BitSet FOLLOW_rule__For__Group_0__6_in_rule__For__Group_0__59492 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__For__DirAssignment_0_5_in_rule__For__Group_0__5__Impl9519 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__For__Group_0__6__Impl_in_rule__For__Group_0__69549 = new BitSet(new long[]{0x0000000000200000L});
    public static final BitSet FOLLOW_rule__For__Group_0__7_in_rule__For__Group_0__69552 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_16_in_rule__For__Group_0__6__Impl9580 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__For__Group_0__7__Impl_in_rule__For__Group_0__79611 = new BitSet(new long[]{0x0000000FE2403820L});
    public static final BitSet FOLLOW_rule__For__Group_0__8_in_rule__For__Group_0__79614 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_21_in_rule__For__Group_0__7__Impl9642 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__For__Group_0__8__Impl_in_rule__For__Group_0__89673 = new BitSet(new long[]{0x0000000FE2403820L});
    public static final BitSet FOLLOW_rule__For__Group_0__9_in_rule__For__Group_0__89676 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__For__InnerElementsAssignment_0_8_in_rule__For__Group_0__8__Impl9703 = new BitSet(new long[]{0x0000000FE2003822L});
    public static final BitSet FOLLOW_rule__For__Group_0__9__Impl_in_rule__For__Group_0__99734 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_22_in_rule__For__Group_0__9__Impl9762 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__For__Group_1__0__Impl_in_rule__For__Group_1__09813 = new BitSet(new long[]{0x0000000000008000L});
    public static final BitSet FOLLOW_rule__For__Group_1__1_in_rule__For__Group_1__09816 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__For__FunctionAssignment_1_0_in_rule__For__Group_1__0__Impl9843 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__For__Group_1__1__Impl_in_rule__For__Group_1__19873 = new BitSet(new long[]{0x0000000000000020L});
    public static final BitSet FOLLOW_rule__For__Group_1__2_in_rule__For__Group_1__19876 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_15_in_rule__For__Group_1__1__Impl9904 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__For__Group_1__2__Impl_in_rule__For__Group_1__29935 = new BitSet(new long[]{0x0000000000010000L});
    public static final BitSet FOLLOW_rule__For__Group_1__3_in_rule__For__Group_1__29938 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__For__VarAssignment_1_2_in_rule__For__Group_1__2__Impl9965 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__For__Group_1__3__Impl_in_rule__For__Group_1__39995 = new BitSet(new long[]{0x0000000000200000L});
    public static final BitSet FOLLOW_rule__For__Group_1__4_in_rule__For__Group_1__39998 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_16_in_rule__For__Group_1__3__Impl10026 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__For__Group_1__4__Impl_in_rule__For__Group_1__410057 = new BitSet(new long[]{0x0000000FE2403820L});
    public static final BitSet FOLLOW_rule__For__Group_1__5_in_rule__For__Group_1__410060 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_21_in_rule__For__Group_1__4__Impl10088 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__For__Group_1__5__Impl_in_rule__For__Group_1__510119 = new BitSet(new long[]{0x0000000FE2403820L});
    public static final BitSet FOLLOW_rule__For__Group_1__6_in_rule__For__Group_1__510122 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__For__InnerElementsAssignment_1_5_in_rule__For__Group_1__5__Impl10149 = new BitSet(new long[]{0x0000000FE2003822L});
    public static final BitSet FOLLOW_rule__For__Group_1__6__Impl_in_rule__For__Group_1__610180 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_22_in_rule__For__Group_1__6__Impl10208 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Forall__Group__0__Impl_in_rule__Forall__Group__010253 = new BitSet(new long[]{0x0000000000000020L});
    public static final BitSet FOLLOW_rule__Forall__Group__1_in_rule__Forall__Group__010256 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Forall__FunctionAssignment_0_in_rule__Forall__Group__0__Impl10283 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Forall__Group__1__Impl_in_rule__Forall__Group__110313 = new BitSet(new long[]{0x0000000000008000L});
    public static final BitSet FOLLOW_rule__Forall__Group__2_in_rule__Forall__Group__110316 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Forall__LocVarAssignment_1_in_rule__Forall__Group__1__Impl10343 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Forall__Group__2__Impl_in_rule__Forall__Group__210373 = new BitSet(new long[]{0x0000000002003830L});
    public static final BitSet FOLLOW_rule__Forall__Group__3_in_rule__Forall__Group__210376 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_15_in_rule__Forall__Group__2__Impl10404 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Forall__Group__3__Impl_in_rule__Forall__Group__310435 = new BitSet(new long[]{0x0000000000004000L});
    public static final BitSet FOLLOW_rule__Forall__Group__4_in_rule__Forall__Group__310438 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Forall__Alternatives_3_in_rule__Forall__Group__3__Impl10465 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Forall__Group__4__Impl_in_rule__Forall__Group__410495 = new BitSet(new long[]{0x0000000002003830L});
    public static final BitSet FOLLOW_rule__Forall__Group__5_in_rule__Forall__Group__410498 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_14_in_rule__Forall__Group__4__Impl10526 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Forall__Group__5__Impl_in_rule__Forall__Group__510557 = new BitSet(new long[]{0x0000000000010000L});
    public static final BitSet FOLLOW_rule__Forall__Group__6_in_rule__Forall__Group__510560 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Forall__Alternatives_5_in_rule__Forall__Group__5__Impl10587 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Forall__Group__6__Impl_in_rule__Forall__Group__610617 = new BitSet(new long[]{0x0000000000200000L});
    public static final BitSet FOLLOW_rule__Forall__Group__7_in_rule__Forall__Group__610620 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_16_in_rule__Forall__Group__6__Impl10648 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Forall__Group__7__Impl_in_rule__Forall__Group__710679 = new BitSet(new long[]{0x0000000FE2403820L});
    public static final BitSet FOLLOW_rule__Forall__Group__8_in_rule__Forall__Group__710682 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_21_in_rule__Forall__Group__7__Impl10710 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Forall__Group__8__Impl_in_rule__Forall__Group__810741 = new BitSet(new long[]{0x0000000FE2403820L});
    public static final BitSet FOLLOW_rule__Forall__Group__9_in_rule__Forall__Group__810744 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Forall__InnerElementsAssignment_8_in_rule__Forall__Group__8__Impl10771 = new BitSet(new long[]{0x0000000FE2003822L});
    public static final BitSet FOLLOW_rule__Forall__Group__9__Impl_in_rule__Forall__Group__910802 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_22_in_rule__Forall__Group__9__Impl10830 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcCR__Group_0__0__Impl_in_rule__CalcCR__Group_0__010881 = new BitSet(new long[]{0x0000000000008000L});
    public static final BitSet FOLLOW_rule__CalcCR__Group_0__1_in_rule__CalcCR__Group_0__010884 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcCR__FunctionAssignment_0_0_in_rule__CalcCR__Group_0__0__Impl10911 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcCR__Group_0__1__Impl_in_rule__CalcCR__Group_0__110941 = new BitSet(new long[]{0x0000000002003820L});
    public static final BitSet FOLLOW_rule__CalcCR__Group_0__2_in_rule__CalcCR__Group_0__110944 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_15_in_rule__CalcCR__Group_0__1__Impl10972 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcCR__Group_0__2__Impl_in_rule__CalcCR__Group_0__211003 = new BitSet(new long[]{0x0000000000010000L});
    public static final BitSet FOLLOW_rule__CalcCR__Group_0__3_in_rule__CalcCR__Group_0__211006 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcCR__Alternatives_0_2_in_rule__CalcCR__Group_0__2__Impl11033 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcCR__Group_0__3__Impl_in_rule__CalcCR__Group_0__311063 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_16_in_rule__CalcCR__Group_0__3__Impl11091 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcCR__Group_1__0__Impl_in_rule__CalcCR__Group_1__011130 = new BitSet(new long[]{0x0000000000008000L});
    public static final BitSet FOLLOW_rule__CalcCR__Group_1__1_in_rule__CalcCR__Group_1__011133 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcCR__FunctionAssignment_1_0_in_rule__CalcCR__Group_1__0__Impl11160 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcCR__Group_1__1__Impl_in_rule__CalcCR__Group_1__111190 = new BitSet(new long[]{0x0000000002003820L});
    public static final BitSet FOLLOW_rule__CalcCR__Group_1__2_in_rule__CalcCR__Group_1__111193 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_15_in_rule__CalcCR__Group_1__1__Impl11221 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcCR__Group_1__2__Impl_in_rule__CalcCR__Group_1__211252 = new BitSet(new long[]{0x0000000000004000L});
    public static final BitSet FOLLOW_rule__CalcCR__Group_1__3_in_rule__CalcCR__Group_1__211255 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcCR__Alternatives_1_2_in_rule__CalcCR__Group_1__2__Impl11282 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcCR__Group_1__3__Impl_in_rule__CalcCR__Group_1__311312 = new BitSet(new long[]{0x0000000002003820L});
    public static final BitSet FOLLOW_rule__CalcCR__Group_1__4_in_rule__CalcCR__Group_1__311315 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_14_in_rule__CalcCR__Group_1__3__Impl11343 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcCR__Group_1__4__Impl_in_rule__CalcCR__Group_1__411374 = new BitSet(new long[]{0x0000000000010000L});
    public static final BitSet FOLLOW_rule__CalcCR__Group_1__5_in_rule__CalcCR__Group_1__411377 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcCR__Alternatives_1_4_in_rule__CalcCR__Group_1__4__Impl11404 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcCR__Group_1__5__Impl_in_rule__CalcCR__Group_1__511434 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_16_in_rule__CalcCR__Group_1__5__Impl11462 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcMean__Group__0__Impl_in_rule__CalcMean__Group__011505 = new BitSet(new long[]{0x0000000000008000L});
    public static final BitSet FOLLOW_rule__CalcMean__Group__1_in_rule__CalcMean__Group__011508 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcMean__FunctionAssignment_0_in_rule__CalcMean__Group__0__Impl11535 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcMean__Group__1__Impl_in_rule__CalcMean__Group__111565 = new BitSet(new long[]{0x0000000102003820L});
    public static final BitSet FOLLOW_rule__CalcMean__Group__2_in_rule__CalcMean__Group__111568 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_15_in_rule__CalcMean__Group__1__Impl11596 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcMean__Group__2__Impl_in_rule__CalcMean__Group__211627 = new BitSet(new long[]{0x0000000000010000L});
    public static final BitSet FOLLOW_rule__CalcMean__Group__3_in_rule__CalcMean__Group__211630 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcMean__Alternatives_2_in_rule__CalcMean__Group__2__Impl11657 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__CalcMean__Group__3__Impl_in_rule__CalcMean__Group__311687 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_16_in_rule__CalcMean__Group__3__Impl11715 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__HighestCR__Group__0__Impl_in_rule__HighestCR__Group__011754 = new BitSet(new long[]{0x0000000000008000L});
    public static final BitSet FOLLOW_rule__HighestCR__Group__1_in_rule__HighestCR__Group__011757 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__HighestCR__FunctionAssignment_0_in_rule__HighestCR__Group__0__Impl11784 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__HighestCR__Group__1__Impl_in_rule__HighestCR__Group__111814 = new BitSet(new long[]{0x0000000102003820L});
    public static final BitSet FOLLOW_rule__HighestCR__Group__2_in_rule__HighestCR__Group__111817 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_15_in_rule__HighestCR__Group__1__Impl11845 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__HighestCR__Group__2__Impl_in_rule__HighestCR__Group__211876 = new BitSet(new long[]{0x0000000000010000L});
    public static final BitSet FOLLOW_rule__HighestCR__Group__3_in_rule__HighestCR__Group__211879 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__HighestCR__Alternatives_2_in_rule__HighestCR__Group__2__Impl11906 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__HighestCR__Group__3__Impl_in_rule__HighestCR__Group__311936 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_16_in_rule__HighestCR__Group__3__Impl11964 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__FindSimilar__Group__0__Impl_in_rule__FindSimilar__Group__012003 = new BitSet(new long[]{0x0000000000008000L});
    public static final BitSet FOLLOW_rule__FindSimilar__Group__1_in_rule__FindSimilar__Group__012006 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__FindSimilar__FunctionAssignment_0_in_rule__FindSimilar__Group__0__Impl12033 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__FindSimilar__Group__1__Impl_in_rule__FindSimilar__Group__112063 = new BitSet(new long[]{0x0000000000000020L});
    public static final BitSet FOLLOW_rule__FindSimilar__Group__2_in_rule__FindSimilar__Group__112066 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_15_in_rule__FindSimilar__Group__1__Impl12094 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__FindSimilar__Group__2__Impl_in_rule__FindSimilar__Group__212125 = new BitSet(new long[]{0x0000000000004000L});
    public static final BitSet FOLLOW_rule__FindSimilar__Group__3_in_rule__FindSimilar__Group__212128 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__FindSimilar__MatrixAssignment_2_in_rule__FindSimilar__Group__2__Impl12155 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__FindSimilar__Group__3__Impl_in_rule__FindSimilar__Group__312185 = new BitSet(new long[]{0x0000000002003830L});
    public static final BitSet FOLLOW_rule__FindSimilar__Group__4_in_rule__FindSimilar__Group__312188 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_14_in_rule__FindSimilar__Group__3__Impl12216 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__FindSimilar__Group__4__Impl_in_rule__FindSimilar__Group__412247 = new BitSet(new long[]{0x0000000000004000L});
    public static final BitSet FOLLOW_rule__FindSimilar__Group__5_in_rule__FindSimilar__Group__412250 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__FindSimilar__Alternatives_4_in_rule__FindSimilar__Group__4__Impl12277 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__FindSimilar__Group__5__Impl_in_rule__FindSimilar__Group__512307 = new BitSet(new long[]{0x0000000302003830L});
    public static final BitSet FOLLOW_rule__FindSimilar__Group__6_in_rule__FindSimilar__Group__512310 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_14_in_rule__FindSimilar__Group__5__Impl12338 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__FindSimilar__Group__6__Impl_in_rule__FindSimilar__Group__612369 = new BitSet(new long[]{0x0000000000010000L});
    public static final BitSet FOLLOW_rule__FindSimilar__Group__7_in_rule__FindSimilar__Group__612372 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__FindSimilar__Alternatives_6_in_rule__FindSimilar__Group__6__Impl12399 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__FindSimilar__Group__7__Impl_in_rule__FindSimilar__Group__712429 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_16_in_rule__FindSimilar__Group__7__Impl12457 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Number__Group__0__Impl_in_rule__Number__Group__012505 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_rule__Number__Group__1_in_rule__Number__Group__012508 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Number__IntegerAssignment_0_in_rule__Number__Group__0__Impl12535 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Number__Group__1__Impl_in_rule__Number__Group__112565 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Number__Group_1__0_in_rule__Number__Group__1__Impl12592 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Number__Group_1__0__Impl_in_rule__Number__Group_1__012627 = new BitSet(new long[]{0x0000000000000010L});
    public static final BitSet FOLLOW_rule__Number__Group_1__1_in_rule__Number__Group_1__012630 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_18_in_rule__Number__Group_1__0__Impl12658 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Number__Group_1__1__Impl_in_rule__Number__Group_1__112689 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Number__DecimalAssignment_1_1_in_rule__Number__Group_1__1__Impl12716 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Archive__Group__0__Impl_in_rule__Archive__Group__012750 = new BitSet(new long[]{0x0000002000000020L});
    public static final BitSet FOLLOW_rule__Archive__Group__1_in_rule__Archive__Group__012753 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Archive__FolderAssignment_0_in_rule__Archive__Group__0__Impl12780 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Archive__Group__1__Impl_in_rule__Archive__Group__112811 = new BitSet(new long[]{0x0000000000040000L});
    public static final BitSet FOLLOW_rule__Archive__Group__2_in_rule__Archive__Group__112814 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Archive__ArqAssignment_1_in_rule__Archive__Group__1__Impl12841 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Archive__Group__2__Impl_in_rule__Archive__Group__212871 = new BitSet(new long[]{0x0000001000000000L});
    public static final BitSet FOLLOW_rule__Archive__Group__3_in_rule__Archive__Group__212874 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Archive__ArqAssignment_2_in_rule__Archive__Group__2__Impl12901 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Archive__Group__3__Impl_in_rule__Archive__Group__312931 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Archive__ArqAssignment_3_in_rule__Archive__Group__3__Impl12958 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__LinuxFolder__Group__0__Impl_in_rule__LinuxFolder__Group__012996 = new BitSet(new long[]{0x0000000000000020L});
    public static final BitSet FOLLOW_rule__LinuxFolder__Group__1_in_rule__LinuxFolder__Group__012999 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__LinuxFolder__UnixFolderAssignment_0_in_rule__LinuxFolder__Group__0__Impl13026 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__LinuxFolder__Group__1__Impl_in_rule__LinuxFolder__Group__113056 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__LinuxFolder__Group_1__0_in_rule__LinuxFolder__Group__1__Impl13083 = new BitSet(new long[]{0x0000000000000022L});
    public static final BitSet FOLLOW_rule__LinuxFolder__Group_1__0__Impl_in_rule__LinuxFolder__Group_1__013118 = new BitSet(new long[]{0x0000002000000000L});
    public static final BitSet FOLLOW_rule__LinuxFolder__Group_1__1_in_rule__LinuxFolder__Group_1__013121 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__LinuxFolder__UnixFolderAssignment_1_0_in_rule__LinuxFolder__Group_1__0__Impl13148 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__LinuxFolder__Group_1__1__Impl_in_rule__LinuxFolder__Group_1__113178 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__LinuxFolder__UnixFolderAssignment_1_1_in_rule__LinuxFolder__Group_1__1__Impl13205 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__WindowsFolder__Group__0__Impl_in_rule__WindowsFolder__Group__013239 = new BitSet(new long[]{0x0000004000000000L});
    public static final BitSet FOLLOW_rule__WindowsFolder__Group__1_in_rule__WindowsFolder__Group__013242 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__WindowsFolder__WindowsFolderAssignment_0_in_rule__WindowsFolder__Group__0__Impl13269 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__WindowsFolder__Group__1__Impl_in_rule__WindowsFolder__Group__113299 = new BitSet(new long[]{0x0000000000000020L});
    public static final BitSet FOLLOW_rule__WindowsFolder__Group__2_in_rule__WindowsFolder__Group__113302 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__WindowsFolder__WindowsFolderAssignment_1_in_rule__WindowsFolder__Group__1__Impl13329 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__WindowsFolder__Group__2__Impl_in_rule__WindowsFolder__Group__213359 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__WindowsFolder__Group_2__0_in_rule__WindowsFolder__Group__2__Impl13386 = new BitSet(new long[]{0x0000000000000022L});
    public static final BitSet FOLLOW_rule__WindowsFolder__Group_2__0__Impl_in_rule__WindowsFolder__Group_2__013423 = new BitSet(new long[]{0x0000002000000000L});
    public static final BitSet FOLLOW_rule__WindowsFolder__Group_2__1_in_rule__WindowsFolder__Group_2__013426 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__WindowsFolder__WindowsFolderAssignment_2_0_in_rule__WindowsFolder__Group_2__0__Impl13453 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__WindowsFolder__Group_2__1__Impl_in_rule__WindowsFolder__Group_2__113483 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__WindowsFolder__WindowsFolderAssignment_2_1_in_rule__WindowsFolder__Group_2__1__Impl13510 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayElement__Group__0__Impl_in_rule__ArrayElement__Group__013544 = new BitSet(new long[]{0x0000000000800000L});
    public static final BitSet FOLLOW_rule__ArrayElement__Group__1_in_rule__ArrayElement__Group__013547 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayElement__ArrayAssignment_0_in_rule__ArrayElement__Group__0__Impl13574 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayElement__Group__1__Impl_in_rule__ArrayElement__Group__113604 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayElement__IdxAssignment_1_in_rule__ArrayElement__Group__1__Impl13631 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Index__Group__0__Impl_in_rule__Index__Group__013665 = new BitSet(new long[]{0x0000000000000030L});
    public static final BitSet FOLLOW_rule__Index__Group__1_in_rule__Index__Group__013668 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_23_in_rule__Index__Group__0__Impl13696 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Index__Group__1__Impl_in_rule__Index__Group__113727 = new BitSet(new long[]{0x0000000001004000L});
    public static final BitSet FOLLOW_rule__Index__Group__2_in_rule__Index__Group__113730 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Index__Alternatives_1_in_rule__Index__Group__1__Impl13757 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Index__Group__2__Impl_in_rule__Index__Group__213787 = new BitSet(new long[]{0x0000000001004000L});
    public static final BitSet FOLLOW_rule__Index__Group__3_in_rule__Index__Group__213790 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Index__Group_2__0_in_rule__Index__Group__2__Impl13817 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Index__Group__3__Impl_in_rule__Index__Group__313848 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_24_in_rule__Index__Group__3__Impl13876 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Index__Group_2__0__Impl_in_rule__Index__Group_2__013915 = new BitSet(new long[]{0x0000000000000030L});
    public static final BitSet FOLLOW_rule__Index__Group_2__1_in_rule__Index__Group_2__013918 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_14_in_rule__Index__Group_2__0__Impl13946 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Index__Group_2__1__Impl_in_rule__Index__Group_2__113977 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Index__Alternatives_2_1_in_rule__Index__Group_2__1__Impl14004 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleElement_in_rule__CRLanguage__ElementsAssignment14043 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleVarDec_in_rule__Element__VarDecAssignment_014074 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleAssignment_in_rule__Element__AssignmentAssignment_114105 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArrayMethod_in_rule__Element__ArrayMethodAssignment_214136 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleFunction_in_rule__Element__FunctionAssignment_314167 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rulePrimitiveDec_in_rule__VarDec__PrimitiveDecAssignment_014198 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArrayDec_in_rule__VarDec__ArrayDecAssignment_114229 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleIntDec_in_rule__PrimitiveDec__IntDecAssignment_014260 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleRealDec_in_rule__PrimitiveDec__RealDecAssignment_114291 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rulePartitionDec_in_rule__PrimitiveDec__PartitionDecAssignment_214322 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_11_in_rule__IntDec__TypeAssignment_014358 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleSimpleVariable_in_rule__IntDec__VarsAssignment_114397 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleSimpleVariable_in_rule__IntDec__VarsAssignment_2_114428 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_12_in_rule__RealDec__TypeAssignment_014464 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleSimpleVariable_in_rule__RealDec__VarsAssignment_114503 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleSimpleVariable_in_rule__RealDec__VarsAssignment_2_114534 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_13_in_rule__PartitionDec__TypeAssignment_014570 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleSimpleVariable_in_rule__PartitionDec__VarsAssignment_114609 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleSimpleVariable_in_rule__PartitionDec__VarsAssignment_2_114640 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_25_in_rule__ArrayDec__ArrayAssignment_014676 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_INT_in_rule__ArrayDec__ColumsAssignment_214715 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_INT_in_rule__ArrayDec__RowsAssignment_3_114746 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__ArrayDec__TypeAlternatives_5_0_in_rule__ArrayDec__TypeAssignment_514777 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArray_in_rule__ArrayDec__ArrayVarsAssignment_614810 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArray_in_rule__ArrayDec__ArrayVarsAssignment_7_114841 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleVarDec_in_rule__Assignment__DecAssignment_0_014872 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Assignment__VariablesAssignment_0_1_014907 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Assignment__VariablesAssignment_0_1_1_114946 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArrayElement_in_rule__Assignment__ArrayElementAssignment_0_214981 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleCalcCR_in_rule__Assignment__CalcCRAssignment_2_015012 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleCalcMean_in_rule__Assignment__CalcMeanAssignment_2_115043 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleNumber_in_rule__Assignment__NumberAssignment_2_215074 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArchive_in_rule__Assignment__ArchiveAssignment_2_315105 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Assignment__VariableAssignment_2_415140 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArrayElement_in_rule__Assignment__AssignedAEAssignment_2_515175 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleSize_in_rule__ArrayMethod__SizeAssignment_015206 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleAdd_in_rule__ArrayMethod__AddAssignment_115237 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleDelete_in_rule__ArrayMethod__DeleteAssignment_215268 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Size__ArrayAssignment_0_015303 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArrayElement_in_rule__Size__ArrayElementAssignment_0_115338 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_26_in_rule__Size__MethodAssignment_215374 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Add__ArrayAssignment_0_015417 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArrayElement_in_rule__Add__ArrayElementAssignment_0_115452 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_27_in_rule__Add__MethodAssignment_215488 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleNumber_in_rule__Add__NumParamsAssignment_4_015527 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Add__VarParamsAssignment_4_115562 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArrayElement_in_rule__Add__AeParamsAssignment_4_215597 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArchive_in_rule__Add__ArchiveAssignment_4_315628 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleSize_in_rule__Add__SizesAssignment_4_415659 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleCalcCR_in_rule__Add__CalcCRsAssignment_4_515690 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleCalcMean_in_rule__Add__CalcMeansAssignment_4_615721 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleNumber_in_rule__Add__NumParamsAssignment_5_1_015752 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Add__VarParamsAssignment_5_1_115787 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArrayElement_in_rule__Add__AeParamsAssignment_5_1_215822 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArchive_in_rule__Add__ArchiveAssignment_5_1_315853 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleSize_in_rule__Add__SizesAssignment_5_1_415884 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleCalcCR_in_rule__Add__CalcCRsAssignment_5_1_515915 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleCalcMean_in_rule__Add__CalcMeansAssignment_5_1_615946 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Delete__ArrayAssignment_0_0_015981 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArrayElement_in_rule__Delete__ArrayElementAssignment_0_0_116016 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_28_in_rule__Delete__MethodAssignment_0_216052 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_INT_in_rule__Delete__DelElementsAssignment_0_4_016091 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Delete__DelVarsAssignment_0_4_116126 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArrayElement_in_rule__Delete__DelArraysAssignment_0_4_216161 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleSize_in_rule__Delete__SizeAssignment_0_4_316192 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_INT_in_rule__Delete__DelElementsAssignment_0_5_0_1_016223 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Delete__DelVarsAssignment_0_5_0_1_116258 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArrayElement_in_rule__Delete__DelArraysAssignment_0_5_116293 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleSize_in_rule__Delete__SizeAssignment_0_5_216324 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Delete__ArrayAssignment_1_0_016359 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArrayElement_in_rule__Delete__ArrayElementAssignment_1_0_116394 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_28_in_rule__Delete__MethodAssignment_1_216430 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleIndex_in_rule__Delete__IndexsAssignment_1_4_016469 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleFindSimilar_in_rule__Delete__FindSimilarsAssignment_1_4_116500 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleHighestCR_in_rule__Delete__HighestCRsAssignment_1_4_216531 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleIndex_in_rule__Delete__IndxsAssignment_1_5_1_016562 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleFindSimilar_in_rule__Delete__FindSimilarsAssignment_1_5_1_116593 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleHighestCR_in_rule__Delete__HighestCRsAssignment_1_5_1_216624 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleStandardFunction_in_rule__Function__StandardFunctionAssignment_016655 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleCRFunction_in_rule__Function__CrFunctionAssignment_116686 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rulePrint_in_rule__StandardFunction__PrintAssignment_016717 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleFor_in_rule__StandardFunction__ForAssignment_116748 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleForall_in_rule__StandardFunction__ForallAssignment_216779 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_29_in_rule__Print__FunctionAssignment_016815 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Print__VarAssignment_2_016858 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_STRING_in_rule__Print__MsgAssignment_2_116893 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArrayElement_in_rule__Print__AeParamAssignment_2_216924 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Print__VarAssignment_3_1_016959 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_STRING_in_rule__Print__MsgAssignment_3_1_116994 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArrayElement_in_rule__Print__AeParamAssignment_3_1_217025 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_30_in_rule__For__FunctionAssignment_0_017061 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__For__LocVarAssignment_0_317104 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleFolder_in_rule__For__DirAssignment_0_517139 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleElement_in_rule__For__InnerElementsAssignment_0_817170 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_30_in_rule__For__FunctionAssignment_1_017206 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__For__VarAssignment_1_217249 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleElement_in_rule__For__InnerElementsAssignment_1_517284 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_31_in_rule__Forall__FunctionAssignment_017320 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Forall__LocVarAssignment_117363 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_INT_in_rule__Forall__BeginAssignment_3_017398 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Forall__BeginVarAssignment_3_117433 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleSize_in_rule__Forall__BeginFunctionAssignment_3_217468 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArrayElement_in_rule__Forall__BeginAEAssignment_3_317499 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_INT_in_rule__Forall__EndAssignment_5_017530 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Forall__EndVarAssignment_5_117565 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleSize_in_rule__Forall__EndFunctionAssignment_5_217600 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArrayElement_in_rule__Forall__EndAEAssignment_5_317631 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleElement_in_rule__Forall__InnerElementsAssignment_817662 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleCalcCR_in_rule__CRFunction__CalcCRAssignment_017693 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleCalcMean_in_rule__CRFunction__CalcMeanAssignment_117724 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleHighestCR_in_rule__CRFunction__HighestCRAssignment_217755 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleFindSimilar_in_rule__CRFunction__FindSimilarAssignment_317786 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_32_in_rule__CalcCR__FunctionAssignment_0_017822 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__CalcCR__VectorAssignment_0_2_017865 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArrayElement_in_rule__CalcCR__ArrayElementAssignment_0_2_117900 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_32_in_rule__CalcCR__FunctionAssignment_1_017936 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArrayElement_in_rule__CalcCR__ArrayElement1Assignment_1_2_017975 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__CalcCR__Var1Assignment_1_2_118010 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArrayElement_in_rule__CalcCR__ArrayElement2Assignment_1_4_018045 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__CalcCR__Var2Assignment_1_4_118080 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_33_in_rule__CalcMean__FunctionAssignment_018120 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__CalcMean__ArrayAssignment_2_018163 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArrayElement_in_rule__CalcMean__ArrayElementAssignment_2_118198 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleCalcCR_in_rule__CalcMean__CalcCRAssignment_2_218229 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_34_in_rule__HighestCR__FunctionAssignment_018265 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__HighestCR__ArrayAssignment_2_018308 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArrayElement_in_rule__HighestCR__ArrayElementAssignment_2_118343 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleCalcCR_in_rule__HighestCR__CalcCRAssignment_2_218374 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_35_in_rule__FindSimilar__FunctionAssignment_018410 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__FindSimilar__MatrixAssignment_218453 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_INT_in_rule__FindSimilar__IndxIntAssignment_4_018488 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__FindSimilar__IndxVarAssignment_4_118523 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArrayElement_in_rule__FindSimilar__IndxAEAssignment_4_218558 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleNumber_in_rule__FindSimilar__SimilarityNumAssignment_6_018589 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__FindSimilar__SimilarityVarAssignment_6_118624 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleArrayElement_in_rule__FindSimilar__SimilarityAEAssignment_6_218659 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleCalcCR_in_rule__FindSimilar__SimilarityCalcCRAssignment_6_318690 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleCalcMean_in_rule__FindSimilar__SimilarityCalcMeanAssignment_6_418721 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__SimpleVariable__NameAssignment18755 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Array__NameAssignment18786 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_INT_in_rule__Number__IntegerAssignment_018817 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_INT_in_rule__Number__DecimalAssignment_1_118848 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleLinuxFolder_in_rule__Folder__LinuxFolderAssignment_018879 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleWindowsFolder_in_rule__Folder__WindowsFolderAssignment_118910 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleFolder_in_rule__Archive__FolderAssignment_018941 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Archive__ArqAssignment_118972 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_18_in_rule__Archive__ArqAssignment_219008 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_36_in_rule__Archive__ArqAssignment_319052 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_37_in_rule__LinuxFolder__UnixFolderAssignment_019096 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__LinuxFolder__UnixFolderAssignment_1_019135 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_37_in_rule__LinuxFolder__UnixFolderAssignment_1_119171 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__WindowsFolder__WindowsFolderAssignment_019210 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_38_in_rule__WindowsFolder__WindowsFolderAssignment_119246 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__WindowsFolder__WindowsFolderAssignment_2_019285 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_37_in_rule__WindowsFolder__WindowsFolderAssignment_2_119321 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__ArrayElement__ArrayAssignment_019364 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleIndex_in_rule__ArrayElement__IdxAssignment_119399 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_INT_in_rule__Index__Param1Assignment_1_019430 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Index__Var1Assignment_1_119465 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_INT_in_rule__Index__Param2Assignment_2_1_019500 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Index__Var2Assignment_2_1_119535 = new BitSet(new long[]{0x0000000000000002L});

}